本文實例講述了Android開發中TextView文本過長滾動顯示實現方法。分享給大家供大家參考,具體如下:
創新互聯公司專注于東營區網站建設服務及定制,我們擁有豐富的企業做網站經驗。 熱誠為您提供東營區營銷型網站建設,東營區網站制作、東營區網頁設計、東營區網站官網定制、成都微信小程序服務,打造東營區網絡公司原創品牌,更為您提供東營區網站排名全網營銷落地服務。項目中在使用TextView時,總會有因要顯示的內容過多而需要我們進行處理的問題。我們第一時間想到的是TextView的android:ellipsize
屬性,比如 android:ellipsize="end"
,效果是在文字的尾部打三個小點。
但是這個屬性要配合android:singLine="true"使用。通常來說,要實現尾端三個點的省略號形式是比較容易的。
如果要求文字全部顯示,但是為了保存UI界面美觀,有限大小的TextView中如何顯示全部的超長文本呢,我們就想到了讓文本滾動顯示。
大家也想到了通過 android:ellipsize="marquee"
來實現,不過我在項目中使用這個也沒有實現效果。
配合了android:singLine="true"
也一樣不能實現文本滾動顯示。網上有很多解決方案,幾乎都是說到焦點問題。
比如有人建議在布局文件中的TextView添加 android:focusable="true"
,不過有時也是沒有效果的。
我的處理方法是,復寫TextView,只要簡單地改一個代碼即可:
public class MarqueTextView extends TextView { public MarqueTextView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); } public MarqueTextView(Context context, AttributeSet attrs) { super(context, attrs); } public MarqueTextView(Context context) { super(context); } @Override public boolean isFocused() { //就是把這里返回true即可 return true; } }
標題名稱:Android開發中TextView文本過長滾動顯示實現方法分析-創新互聯
文章起源:http://vcdvsql.cn/article18/dsdcgp.html
成都網站建設公司_創新互聯,為您提供網站營銷、企業建站、定制網站、網站維護、響應式網站、外貿網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯