2011-01-13 63 views
1

我有一個小部件,我需要在一行上顯示一些文本。如果文字不合適,我想盡可能地顯示,並用「...」結束文本,以顯示並非所有文本都顯示出來。有沒有辦法在渲染小部件之前發現顯示的文本將會顯示多長時間,以便我可以用「...」替換文本的最後部分?在渲染前測量文本長度

乾杯,

+1

我認爲這個問題的答案是你在尋找什麼:http://stackoverflow.com/questions/1666736/android-textview-automatically-truncate-and-replace-last-3- char-of-string :) – Nailuj 2011-01-13 10:30:11

+1

類似的問題:http://stackoverflow.com/questions/3257293/measuring-text-width-to-be-drawn-on-canvas-android – bigstones 2011-01-13 10:30:39

回答

3

你不需要這樣做 - 一個TextView可以爲你做到這一點。

myTextView.setSingleLine(true); 
myTextView.setEllipsize(TextView.TruncateAt.END);