看demos,我这里是一个列表模式(单一条目不用看了),上下滚动,然后每一个条目的文字都可以收复或者展开
tv_show_more.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 这是点击的代码
if (tv_remark.getTag().toString().equals("open")) {
tv_remark.setLines(5);
tv_show_more.setText(Html.fromHtml("<u><i>" + "More" + "</i></u>"));
tv_remark.setTag("close");
} else {
tv_remark.setMaxLines(Integer.MAX_VALUE);
tv_show_more.setText(Html.fromHtml("<u><i>" + "Pack up" + "</i></u>"));
tv_remark.setTag("open");
}
}
});
如果把一个开关变量保存在控件中,或者内存中,只要列表重新滚动,那么标记都会回复初始状态,
所以,如果要做开关.比如文字展开和收复的功能,只能在数据里面增加一个标记,只有这样才能在滚动的时候,恢复到上次打开或者关闭的状态
网友评论