我需要在Android 2.2及更高图标选择简单的控制。
画廊对我来说是更好的解决方案,但它已被废弃,我不得不使用HorizontalScrollView
和ViewPager
代替。
但是,如何迁移容易吗? 如何使用本类和控件在这种情况下? 我试图找到这个问题的完整的例子,但我不能找到它。
Answer 1:
这从戴维·史密斯要点显示方式使用ViewPager
有视觉效果非常类似于Gallery
:
引用我的博客文章的话题显示在一个时间多页的ViewPager
:
他的容器(
com.example.pagercontainer.PagerContainer
)包裹ViewPager
并调用setClipChildren(false);
在本身,所以即使ViewPager
的重点是一个选择的页面上,有超越的坐标其他页面ViewPager
界仍清晰可见,只要他们符合内PagerContainer
。 通过施胶ViewPager
比小PagerContainer
,该ViewPager
可以大小可以看出它的新页面,大小,留有余地其他页面。PagerContainer
,不过,需要帮助了一点触摸事件,ViewPager
将只处理自身的可视范围刷卡事件,忽略向两侧可见的任何页面。
您可能还希望通过对筛选这个Android的开发者线程 ,当有人指出一个问题,这个较新的Android版本。 你需要禁用硬件加速是由于错误ViewPager
。
Answer 2:
有触摸操作和硬件加速CommonsWare的连接解决方法的各种问题。 更简单,更优雅的解决方案,在我看来,是到指定ViewPager阴性切缘:
ViewPager.setPageMargin(
getResources().getDimensionPixelOffset(R.dimen.viewpager_margin));
那么我指定我的这个维度dimens.xml
:
<dimen name="viewpager_margin">-64dp</dimen>
为了弥补重叠页面,每个页面的内容观点有相反的保证金:
android:layout_marginLeft="@dimen/viewpager_margin_fix"
android:layout_marginRight="@dimen/viewpager_margin_fix"
同样是在dimens.xml
:
<dimen name="viewpager_margin_fix">32dp</dimen>
(请注意, viewpager_margin_fix
尺寸一半的绝对viewpager_margin
尺寸。)
我们实现了这个在荷兰报纸应用电讯报Krant :
文章来源: How to migrate from Gallery to HorizontalScrollView & ViewPager?