请教一下 Android 水平按钮列表如何实现(按钮数量不确定)

2015-12-19 18:59:31 +08:00
 Bensendbs

想实现一个类似美图秀秀底部的横向滑动按钮列表,因为按钮的数量并不确定,需要动态往里面加,所以简单的用 LinearLayout 什么的不太好实现。

目前是这样想的,使用 HorizontalListView 开源库,把按钮加进去。但是不确定这个这样实现够不够 native ,觉得只是几个按钮就用到 ListView 里面会不会太麻烦,而且看了一下项目介绍好像这个库本身也有些问题。

10429 次点击
所在节点    Android
10 条回复
KNOX
2015-12-19 19:16:50 +08:00
我觉得可以用 RecyclerView ,写个简单的 Adapter 麻烦吗?
Bensendbs
2015-12-19 19:25:12 +08:00
@KNOX 好的 我去了解下
shyling
2015-12-19 19:40:05 +08:00
recyclerview 配上横向 linearlayout
MiniGhost
2015-12-19 20:48:16 +08:00
就 HorizontalScrollView 里面套一个 LinearLayout ,然后往里面动态 addView 就可以了吧
每个按钮如果有 icon ,反正也很小,无所谓什么内存问题吧

RecyclerView 滑动的过程还需要重新去 bindView ,如果 icon 不一样还需要维护一个 icon 表,感觉太啰嗦了
KNOX
2015-12-19 21:28:58 +08:00
@MiniGhost 如果 icon 不一样可以根据 ViewType 切换
loshine1992
2015-12-19 23:49:43 +08:00
RecyclerView + LinearLayoutManager 是比较合适的解决方案
allan1st
2015-12-20 02:04:25 +08:00
@KNOX 个人愚见, viewtype 不是这样用的,是 layout 不同或者 viewmodel 不同时候采用的。单单 icon 不同只需要一个默认的 type 就可以了。
KNOX
2015-12-20 09:10:44 +08:00
@allan1st 但他是 itemView 里的 button 变化,而不是 itemView 是变化
allan1st
2015-12-20 17:44:11 +08:00
@KNOX 每个 item 都有一个独立的 type ,那就没有 recycle 的意义了。 还不如直接 LinearLayout 。
hqs123
2015-12-22 11:10:20 +08:00
android 初学者也来学习下

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/244712

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX