溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在Android應用中利用TextSwitcher實現(xiàn)一個上下滾動功能

發(fā)布時間:2020-12-07 16:28:43 來源:億速云 閱讀:333 作者:Leah 欄目:移動開發(fā)

本篇文章為大家展示了怎么在Android應用中利用TextSwitcher實現(xiàn)一個上下滾動功能,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

Android 上下滾動TextSwitcher實例詳解

1.在activity中需要代碼聲明

textSwitcher = (TextSwitcher)findViewById(R.id.text_switcher); 
    textSwitcher.setFactory(new ViewFactory() { 
       
      @Override 
      public View makeView() { 
        TextView tv = new  TextView(MainActivity.this); 
        tv.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 16.0F); 
        tv.setTextColor(Color.RED); 
        return tv; 
      } 
    }); 
     
    textSwitcher.setInAnimation(AnimationUtils.loadAnimation(this, R.anim.anim_in)); 
    textSwitcher.setOutAnimation(AnimationUtils.loadAnimation(this, R.anim.anim_out)); 

2.兩個anim動畫xml

<&#63;xml version="1.0" encoding="utf-8"&#63;> 
<set xmlns:android="http://schemas.android.com/apk/res/android" 
   android:fillAfter="true"  
  android:shareInterpolator="false"  android:zAdjustment="top"> 
  <translate  
    android:duration="3000"  
    android:fromYDelta="100%p"  
    android:toYDelta="0" /> 
</set> 
<&#63;xml version="1.0" encoding="utf-8"&#63;> 
<set xmlns:android="http://schemas.android.com/apk/res/android" 
  android:fillAfter="true"  
  android:shareInterpolator="false"  android:zAdjustment="top"> 
   
   <translate  
    android:duration="3000"  
    android:fromYDelta="0"  
    android:toYDelta="-100%p" />  
</set> 
<style name="pop_anim"> 
    <item name="android:windowEnterAnimation">@anim/anim_in</item> 
  <item name="android:windowExitAnimation">@anim/anim_out</item> 
  </style> 

3.用線程或者定時器實現(xiàn)循環(huán)翻動。

Thread t = new Thread(new Runnable() { 
     
    @Override 
    public void run() { 
      while (!flag) { 
        Message msg = new Message(); 
        msg.what = 1; 
        msg.obj = getItem[i]; 
        handler.sendMessage(msg); 
        if (i== 2) { 
          i = 0; 
        } 
        try { 
          t.sleep(3000); 
          i++; 
           
        } catch (InterruptedException e) { 
          // TODO Auto-generated catch block 
          e.printStackTrace(); 
        } 
      } 
       
    } 

4.hanlder更新ui

private Handler handler = new Handler(){ 
    public void handleMessage(android.os.Message msg) { 
       
      textSwitcher.setText((String)msg.obj); 
       
      super.handleMessage(msg); 
    }; 
  }; 

上述內(nèi)容就是怎么在Android應用中利用TextSwitcher實現(xiàn)一個上下滾動功能,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI