TextView展开和收回

Posted 嘉禾世兴

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TextView展开和收回相关的知识,希望对你有一定的参考价值。

第一步:接口请求返回数据

第二步:使用handler和textview.getLineCount方法判断是否超过指定行数:

community_desc_more.setVisibility(View.VISIBLE);
community_desc.setMaxLines(3);
community_desc.setEllipsize(TextUtils.TruncateAt.END);

第三步:点击展开按钮判断

int communityLineCount = community_desc.getLineCount();
if (communityLineCount > 3) {
    community_desc_more.setText("展开");
    community_desc.setMaxLines(3);
} else {
    community_desc.setMaxLines(Integer.MAX_VALUE);
    community_desc_more.setText("收起");
}

有个要注意的地方,getLineCount得到的是textview的真正行数,但是如果使用了

setEllipsize(TextUtils.TruncateAt.END)

得到的却是可见的行数

 

以上是关于TextView展开和收回的主要内容,如果未能解决你的问题,请参考以下文章

Android 实现视图文本TextView的展开与收缩功能

在 AsyncTask 中将新的 TextView 设置为片段

Android 自定义 View-->TextView 的展开 & 收起(文本折叠)

片段中的TextView在Android Studio中返回Null

SQLite 片段函数实现不会在 TextView 中将文本格式化为 HTML

如何在android库的片段中添加按钮和textView