类似于微信朋友圈图片这样的是在listview中嵌套gridview还是动态加入多个imageview呢?

类似于微信朋友圈图片这样的是在listview中嵌套gridview还是动态加入多个imageview呢?

阅读 3.2k
2 个回答

应该是动态添加多个imageview,你可以打开开发者选项里面的显示布局边界,或者GPU过度绘制,你会发现图片列表的过度绘制越靠后越少,越靠前越多,比如三张一行的情况下,第一张图片颜色最深,至少三层布局,第二张稍浅,最后一张基本没有过度绘制,我猜测微信使用的可能是层叠类型的布局,比如RelativeLayout

一般不会在AbsListView里再嵌套使用AbsListView的, onMeasure(...)会多次测量第一个View.
因此, 可能会导致滚动会出现卡顿的现象.

可以考虑使用GridLayout + ViewStub的方式实现. 自行百度或者Google这俩货吧.
还可以考虑自定义视图.

参考开源项目:

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题