愤怒的小鸟喜欢滚动菜单

时间:2011-03-17 14:12:29

标签: java android android-scrollview horizontal-scrolling

当您启动“愤怒的小鸟”并点击播放时,会显示一个水平滚动菜单,其中有一行图像,一旦点击,您就可以启动游戏而不是。我想知道如何使菜单与此类似,因为它横向(水平)滚动并显示可点击的图像?提前谢谢!

3 个答案:

答案 0 :(得分:8)

我认为您可以使用HorizontalScrollView.完成此任务。您的Horizo​​ntalScrollView的子项将是LinearLayout,其方向为:horizo​​ntal。它将包含ImageViews或ImageButtons。为了实现“愤怒的小鸟”中的“快照”效果,您必须为滚动视图设置onTouchListener(),并在ACTION_UP部分内部检查hScrlView.getScrollX()以查看哪个图像你最接近,然后调用hScrlView.scrollTo(x,y)并使x参数成为你最接近的图像的布局x值。

编辑:我从未亲自使用过GalleryView,但基于this tutorial,您似乎可以通过这种方式使用它。它可以为你处理'snap to'机制,这样你就不必自己做触摸听众了。我不确定你是否可以在一个图库中设置图像之间的空间(愤怒的小鸟中的图片分散了很多),我知道你可以使用Horizo​​ntalScrollView和线性或相对布局。

答案 1 :(得分:1)

您可以使用Gallery执行此操作,并在适配器中将TouchListeners添加到每个项目的ImageViews中。这是最好的方法,因为当您滚动时,Gallery会支持每个图像居中。使用Horizo​​ntalScrollView,您只能使用fling滚动,菜单中的项目将不会集中。

答案 2 :(得分:0)

我自己一直无法找到如何做到这一点,但这篇文章是一个好的开始:

How can I make a horizontal ListView in Android?