在Android的ApiDemo中,有Button的走馬燈效果,但是換作是TextView,還是有一點差異。
定義走馬燈(Marquee),主要在Project/res/layout/main.xml即可
[html]
<SPAN style="COLOR: #993300"><TextView
android:layout_width="40px"
android:layout_height="wrap_content"
android:text="Test marquee for TextView"
android:layout_gravity="center"
android:ellipsize="marquee"
android:singleLine="true"
android:focusable="true"
android:marqueeRepeatLimit="marquee_forever"
android:focusableInTouchMode="true"
android:scrollHorizontally="true"
/></SPAN>
<TextView
android:layout_width="40px"
android:layout_height="wrap_content"
android:text="Test marquee for TextView"
android:layout_gravity="center"
android:ellipsize="marquee"
android:singleLine="true"
android:focusable="true"
android:marqueeRepeatLimit="marquee_forever"
android:focusableInTouchMode="true"
android:scrollHorizontally="true"
/>
關鍵點:
(1)layout_width設定的長度要比text其實的長度短才行,即layout_width顯示不全text才會有走馬燈效果
(2)ellipsize 即申明使用走馬燈marquee
(3)singleLine表示單行顯示
(4)marqueeRepeatLimit表示走馬燈顯示的次數:marquee_forever-無限制不間斷顯示
[html]
<SPAN style="COLOR: #993300"><Button
android:id="@+id/buttonMarquee"
android:layout_width="320px"
android:layout_height="wrap_content"
android:text="@string/textMarquee"
android:singleLine="true"
android:focusable="true"
android:selectAllOnFocus="true"
android:ellipsize="marquee"
android:marqueeRepeatLimit="marquee_forever"
/></SPAN>
<Button
android:id="@+id/buttonMarquee"
android:layout_width="320px"
android:layout_height="wrap_content"
android:text="@string/textMarquee"
android:singleLine="true"
android:focusable="true"
android:selectAllOnFocus="true"
android:ellipsize="marquee"
android:marqueeRepeatLimit="marquee_forever"
/>