最近项目中遇到了ListView中Textview展开查看更多和收起,默认只显示两行,多的用...
在网上查到资料使用自定义view发现有点问题,于是决定用两个Textview完成,下面是适配器中的代码。
helper.getTextView(R.id.item_home_content_tv1).setText(model.getReplyContent());
helper.getTextView(R.id.item_home_content_tv2).setText(model.getReplyContent());
helper.getTextView(R.id.item_home_content_tv2).post(new Runnable() {
@Override
public void run()
if (helper.getTextView(R.id.item_home_content_tv2).getLineCount() < 3) {
helper.getView(R.id.item_home_all_linear).setVisibility(View.INVISIBLE);
helper.getTextView(R.id.item_home_content_tv2).setVisibility(View.GONE);
} else {
helper.getView(R.id.item_home_all_linear).setVisibility(View.VISIBLE);
helper.getTextView(R.id.item_home_content_tv2).setVisibility(View.GONE);
}
}
});
helper.getView(R.id.item_home_all_linear).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (helper.getTextView(R.id.item_home_content_tv2).getVisibility() == View.GONE) {
helper.getTextView(R.id.item_home_content_tv2).setVisibility(View.VISIBLE);
helper.getTextView(R.id.item_home_content_tv1).setVisibility(View.GONE);
helper.getTextView(R.id.item_home_zhankai).setText("收起");
} else {
helper.getTextView(R.id.item_home_content_tv2).setVisibility(View.GONE);
helper.getTextView(R.id.item_home_content_tv1).setVisibility(View.VISIBLE);
helper.getTextView(R.id.item_home_zhankai).setText("展开全部");
}
}
});
布局
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20px"
android:orientation="vertical">
<TextView
android:id="@+id/time"
android:layout_width=