今天做项目遇到新需求加一个显示全文的功能,废话少说只接代码:
1.设置android:ellipsize为end形式,超出2行后省略号显示
//设置android:ellipsize为end形式,超出2行后省略号显示
<TextView
android:id="@+id/fragment_works_recommend_content"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/px_45"
android:layout_marginRight="@dimen/px_45"
android:layout_marginTop="@dimen/px_25"
android:ellipsize="end"
android:lineSpacingExtra="@dimen/px_10"
android:maxLines="2"
android:text="哈哈哈哈啊哈哈哈测试跟"
android:textColor="@color/color_black_333"
android:textSize="@dimen/px_42"/>
2.
//设置全文点击事件,通过设置setEllipsize来控制
all.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (fragment_works_recommend_content.getEllipsize() == null) {
//显示2行,按钮设置为点击显示全部。
all.setText("全文");
fragment_works_recommend_content.setMaxLines(2);
fragment_works_recommend_content.setEllipsize(TextUtils.TruncateAt.END);
} else {
//展示全部,按钮设置为点击收起。
fragment_works_recommend_content.setMaxHeight(mContext.getResources().getDisplayMetrics().heightPixels);
all.setText("收起");
fragment_works_recommend_content.setEllipsize(null);
}
}
});