【问题标题】:How to add Textviews next to each other and move them to the next line if they dont fit如何将文本视图彼此相邻添加并在不合适时将它们移动到下一行
【发布时间】:2011-09-21 22:03:05
【问题描述】:

我有 5 个文本视图,每个文本视图都有自己的背景,它们是一个相邻的, 它们的大小会根据我放入其中的文本量而变化。我想知道是否 在任何时候,它们都会停止拟合,因为它们到达了父级的边界。但不仅如此,如果它们不合适,我还希望能够添加诸如“单击此处查看更多”之类的内容。那么,当我向它们添加文本时,如何检测它们占用了多少空间?谢谢

【问题讨论】:

    标签: android android-layout


    【解决方案1】:

    您可以使用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);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-22
      • 2017-08-10
      • 2018-11-13
      • 1970-01-01
      • 2017-12-26
      相关资源
      最近更新 更多