Android中TextView如何實現水平和垂直滾動

一、隻想讓TextView顯示一行,但是文字超過TextView的長度怎麼辦?
在開頭顯示省略號
[html] android:singleLine="true" 
android:ellipsize="start" 
在結尾顯示省略號
[html]
android:singleLine="true" 
android:ellipsize="end" 
在中間顯示省略號
[html]
android:singleLine="true" 
android:ellipsize="middle" 
橫向自動滾動(跑馬燈效果)
[html]
android:singleLine="true" 
android:ellipsize="marquee" 
android:marqueeRepeatLimit="marquee_forever" 
android:focusable="true" 
android:focusableInTouchMode="true" 
以上4個效果都要加上 android:singleLine="true",因為TextView默認是會自動換行的
android:ellipsize是設置文字過長時,該怎麼顯示
android:marqueeRepeatLimit="marquee_forever"是設置永遠重復,當然你也可以設置具體的數字
android:focusable="true"和android:focusableInTouchMode="true"一定要加上,不然滾動效果出不來

二、怎麼讓TextView可以垂直滾動?
在Java代碼中加入下面一句話就可以實現垂直滾動
[java]
textView.setMovementMethod(ScrollingMovementMethod.getInstance()); 

 

摘自 殤雲的專欄

發佈留言