我有一个列表视图,我希望每个列表项都包含图像。但是图像将一次显示一个。因此,在每个列表项目的时间,仅显示一个图像。要查看列表项中的其他图像,必须水平滑动。
是否有任何内置的小部件在android中处理这个?
的 EDIT1
我的列表项不仅有图像,还包含其他视图,如textview,seekbar等。因此每个列表项将包含图像,textview,搜索栏等,但大部分空间将被图像占用。现在,对于每个列表项,当水平滑动图像时,必须从ulr下载另一个图像并显示。
的 EDIT2
我对ViewPager进行了一些研究,但许多引用如answers here和blog似乎表明在listview中使用ViewPager并不是一个好主意。这是为什么?如果这不是一个好主意,那么什么是好的选择呢?
答案 0 :(得分:3)
使用ViewPager可以解决此问题。
链接:http://developer.android.com/training/animation/screen-slide.html
答案 1 :(得分:2)
ViewPager(用于在视图之间滑动)+ UniversalImageLoader(用于从网址加载图片,使用缓存等)
答案 2 :(得分:2)
如果不是,那么什么是好的选择呢?
我认为您应该将RecyclerView
与LinearLayoutManager.HORIZONTAL
一起使用。回收视图的所有内容,view holder design pattern
都可以轻松完成,而widget
引入了google
,您可以使用它代替ListView + ViewPager
。因为如您所建议的那样,建议不要在viewpager
内使用listview
。虽然您可以使用horizontalScrollView
,但它不会回收视图。存在this之类的其他第三方库但我建议您将RecyclerView
与LinearLayoutManager.HORIZONTAL
一起使用,因为它来自谷歌,并且通常比人工库测试更多。另一件事是你可以使用其他布局管理器,如GridLayoutManager
,或者有3行水平滑动或其他好的效果,如添加动画和.... google
随RecyclerView
提供。
要下载图片,您可以使用Picasso,Volley,Universal Image Loader或许多其他库。
快乐编码:-)
答案 3 :(得分:1)
不确定我是否关注过你,而不是ListView
使用ViewPager
与简单的片段一次包装单个图片更简单。通过这种方式,您可以获得横向滑动"免费"。
答案 4 :(得分:0)
您只是想要滑动来更改图像吗?或者您想要在滑动时滚动图像?对于前者,您可以使用GestureDetector。对于后者,您可能会使用ViewPager。见http://developer.android.com/training/animation/screen-slide.html
答案 5 :(得分:0)
我通过使用ViewPager实现了相同的功能,您可以将SeekBar和TextView放在Fragment类中,您将为每个项目创建多个实例并添加到pageradapter,
您还可以在主片段布局文件中的ViewPager Layout上方添加TextView和SeekBar,并在viewpager的项目更改侦听器上更改搜索栏上的文本和数据,这看起来更整洁,这是我使用的方法< / p>