TextView中顯示的字數過長截斷處理

2021-06-06 05:03:07 字數 967 閱讀 2915

看到這個題目,第一感覺想到的處理情況就是自己判斷這個view能顯示多少字,然後對string進行處理,在處理後的string上加上省略號。但是這樣處理問題頗多,如

1、如果中英文混雜   這裡 就沒法判斷 字元長度了

2、更別說 不同尺寸的螢幕   和   適應橫豎屏切換 了

這種處理方式不搞得你抓狂才怪。

但是其實是不用這麼處理的,吃力反而不討好,google很自然的想到了我們可能有這種需求,並且已經提供了api供我們使用。那就是setellipsize方法。

方法引數 texturils.truncateat   :

enum values

textutils.truncateatend 

textutils.truncateatmarquee 

textutils.truncateatmiddle

textutils.truncateatstart

這方法提供了介面,我們可以在前面、中間或後面加上省略號。但是使用過程中需要注意幾個問題(測試心得):

1、android:layout_width="wrap_content"       這個是   必須   的

2、android:singleline="true"                         這個不必須, 因為 系統可能會兩行 然後 加...

但是 一會兒一行,一會兒兩行的 介面,估計不太能讓人接受。

3、如果你使用的edittext來顯示,額外的,還需要將其editable的屬性置為false,因為edittext預設是可以編輯的,編輯情況下系統是不會幫你截斷然後顯示的。

public void 

setellipsize

(textutils.truncateat where)

Android中Textview顯示帶html文字

出處 textview可以顯示基本的html標籤,如果不知道那些標籤,可以檢視android中textview顯示帶html文字一 html標籤 下面著重說一下textview顯示 img 標籤,也許看到這裡,大家都會想到就是構建imagegetter,過載一下其 public drawable g...

在textView中顯示提示文字

textview的屬性 直接上 吧 uitextview的常用方法 主要用來輸入和顯示多行文字資訊 uitextview onetextview uitextview alloc init onetextview.frame cgrectmake 0,20,320,200 設定位置 onetextv...

iOS中TextView顯示HTML文字

nsattributedstring attributedstring nsattributedstring alloc initwithdata contentstr datausingencoding nsunicodestringencoding options documentattribu...