標籤:
布局檔案:
<TextView android:id="@+id/businesscardsingle_content_abstract" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="5dp" android:lineSpacingMultiplier="1.0" android:lines="6" android:text="@string/agrinbusiness_content" android:textColor="#7f7f7f" android:textSize="13sp" />
在JAVA代碼中控制文本的顯示行數:
ViewTreeObserver observer = textAbstract.getViewTreeObserver(); //textAbstract為TextView控制項observer.addOnGlobalLayoutListener(new OnGlobalLayoutListener() { @Overridepublic void onGlobalLayout() {ViewTreeObserver obs = textAbstract.getViewTreeObserver();obs.removeGlobalOnLayoutListener(this);if(textAbstract.getLineCount() > 6) //判斷行數大於多少時改變 { int lineEndIndex = textAbstract.getLayout().getLineEnd(5); //設定第六行打省略符號 String text = textAbstract.getText().subSequence(0, lineEndIndex-3) +"..."; textAbstract.setText(text); } }});
android TextView多行文本(超過3行)使用ellipsize屬性無效問題的解決方案