跑馬燈就是TextView容納不下內容,需要靠播放動畫的形式來顯示
1、通常,很多人只需要實現一個TextView的跑馬燈,只需要在將textview的屬性中加入下面這段即可(具體參數代表的意思,請參考此處http://www.cnblogs.com/over140/archive/2010/08/27/1809745.html)
android:layout_marginRight="20dp" android:ellipsize="marquee" android:focusable="true" android:marqueeRepeatLimit="marquee_forever" android:focusableInTouchMode="true" android:scrollHorizontally="true" android:singleLine="true"
2、但如果需要實現同一頁面多個textview的跑馬燈時,會發現,永遠只有一個textview可以實現,其他都沒有任何效果,這是為什麼呢?因為跑馬燈效果的實現有個很重要的參數就是是否isFocused。所以你只需繼承TextView並重寫isFocused方法即可,如下:
public class TextViewMarquee extends TextView {public TextViewMarquee(Context context) {super(context);}public TextViewMarquee(Context context, AttributeSet attrs, int defStyle) {super(context, attrs, defStyle);}public TextViewMarquee(Context context, AttributeSet attrs) {super(context, attrs);}@Overridepublic boolean isFocused() {return true;}}
希望能幫到大家!