扫码关注官方订阅号
类似于微信朋友圈图片这样的是在listview中嵌套gridview还是动态加入多个imageview呢?
走同样的路,发现不同的人生
应该是动态添加多个imageview,你可以打开开发者选项里面的显示布局边界,或者GPU过度绘制,你会发现图片列表的过度绘制越靠后越少,越靠前越多,比如三张一行的情况下,第一张图片颜色最深,至少三层布局,第二张稍浅,最后一张基本没有过度绘制,我猜测微信使用的可能是层叠类型的布局,比如RelativeLayout
一般不会在AbsListView里再嵌套使用AbsListView的, onMeasure(...)会多次测量第一个View.因此, 可能会导致滚动会出现卡顿的现象.
AbsListView
onMeasure(...)
可以考虑使用GridLayout + ViewStub的方式实现. 自行百度或者Google这俩货吧. 还可以考虑自定义视图.
GridLayout
ViewStub
参考开源项目:
github: qii/weiciyuan - Sina Weibo Android Client, 四次元 这是一个很老的项目了
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
应该是动态添加多个imageview,你可以打开开发者选项里面的显示布局边界,或者GPU过度绘制,你会发现图片列表的过度绘制越靠后越少,越靠前越多,比如三张一行的情况下,第一张图片颜色最深,至少三层布局,第二张稍浅,最后一张基本没有过度绘制,我猜测微信使用的可能是层叠类型的布局,比如RelativeLayout
可以考虑使用
GridLayout
+ViewStub
的方式实现. 自行百度或者Google这俩货吧.还可以考虑自定义视图.
参考开源项目:
github: qii/weiciyuan - Sina Weibo Android Client, 四次元 这是一个很老的项目了