demo下载:
listview嵌套listview实现评论效果 - 下载频道 - CSDN.NET
http://download.csdn.net/detail/baidu_31093133/9755222
实现效果:
解决内部listview只显示一行的问题:
自定义listview并重写onMeasure方法即可:
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
//设置为Integer.MAX_VALUE>>2 是listview全部展开
int measureSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2, MeasureSpec.AT_MOST);
//设置为400是设置listview的高度只能有400 不全部展开 实现可以滑动的效果
// int measureSpec1 = MeasureSpec.makeMeasureSpec(400, MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec, measureSpec);
}
外层listview的adapter是AdapterParagraph
内层listview的adapter是AdapterComment
AdapterParagraph的数据源是List<Paragraph>
AdapterComment的数据源是List<Comment>
当评论的时候,要点击Item布局的回复按钮,并调用外层的editext和回复按钮,更新List<Paragraph>
并调用notifyDataSetChanged方法来刷新界面。
注意:
回复的输入框和回复按钮应该在最外层,这样实现比较简单,如果把这个输入框和回复按钮写在外层listview的Item布局里不仅会占用较多的显示空间,实现起来也更加复杂。
具体代码请参考demo:
listview嵌套listview实现评论效果 - 下载频道 - CSDN.NET
http://download.csdn.net/detail/baidu_31093133/9755222