2012-06-08 43 views
7

我正在以編程方式創建具有不同字符串的StaticLayouts,然後將每個應用於隨後添加到畫布的位圖。在通過我在SL構造函數中定義的固定高度切斷之前,SL顯示最多兩行。但沒有橢圓表示文字比所示的長。如何在文本StaticLayout超過其高度時將橢圓添加到文本中?

http://developer.android.com/reference/android/text/StaticLayout.html我看到第三個構造具有截斷參數結尾:

StaticLayout(CharSequence source, int bufstart, int bufend, TextPaint paint, int outerwidth, Layout.Alignment align, float spacingmult, float spacingadd, boolean includepad, TextUtils.TruncateAt ellipsize, int ellipsizedWidth) 

我知道我想TextUtils.TruncateAt.END,但我不能找出我應該定義bufstartbufend ,和ellipsizedWidth。我找不到任何這個構造函數的好例子,或者它甚至能幫助實現我的目標。

回答

1

不是100%熟悉的Android,但有同樣的問題我自己,這就是我發現:

  • bufstart - 第一個字符(源)的指數在佈局
  • 包括
  • bufend - 最後一個字符的索引布局包括
  • outerwidth - 我認爲包含所有文本虛框的寬度(我只是做它真的很寬)
  • ellipsizedwidth - 寬度您將您的圖紙放入,如果文字超出,文字將被修剪ds這

對不起,一個不那麼自信的答案,但我還在學習!

相關問題