2011-09-21 86 views
1

我有5个文字浏览,每个文字浏览都有自己的背景,它们相邻, 尺寸根据数量我把它们放进去的文字。我想知道他们是否在任何时候停止接受 ,因为他们到达父母的边界。但不仅如此,如果他们不合身,我希望能够添加诸如“点击这里查看更多”等内容。那么,如果我将文本添加到他们,我怎么才能检测到他们占用了多少空间?谢谢如何相互添加文字浏览并将它们移动到下一行(如果它们不合适)

回答

2

您可以使用TextUtils.ellipsize
保持会员的实际文字。以文本为参数调用ellipsize,并将返回的文本设置为textview。
您可以设置一个回调TextUtils.EllipsizeCallback,当文本被省略时将被调用。

TextUtils.EllipsizeCallback ellipsizeCallback = new TextUtils.EllipsizeCallback(){ 
    void ellipsized(int start, int end) { 
     // enable the `click here to see more` button. 
    } 
} 

... 
CharSequence elipsizedText = ellipsize (mtext, mtxtpaint, 
             avail, TextUtils.TruncateAt.END , 
             preserveLength, ellipsizeCallback); 
tv.setText(mtext); 
相关问题