我需要实现如图所示的类似轮子的控件(老虎机)。
但每个项目的边缘(项目之间的位置)需要平滑,以便它看起来像地球一样的球体。这是从 iPhone 库中获得的 iPhone 应用程序的屏幕截图。我想要安卓版的。我检查了 kankan 轮(Android 轮),但它不能满足我的需求。然而,我需要它的循环行为。我还检查了以下链接。
http://developer.sonymobile.com/2010/06/23/android-tutorial-making-your-own-3d-list-part-3/ http://developer.sonymobile.com/2010/06/23/android-tutorial-making-your-own-3d-list-part-3/
我使用了画布和矩阵,并使用了预翻译、翻译后缩放等方法的一些值。但我不知道它是如何工作的,它对偏斜的特定值会产生什么影响等。
当我与 UI 设计师讨论时,他们告诉我,要实现此屏幕设计,请使用“倾斜”或“透视”属性。但我不知道如何在 android 中倾斜或应用透视图像。我尝试在自定义列表视图的 ondrawChild() 方法中应用一些值来倾斜(使用此链接的列表视图实现http://developer.sonymobile.com/2010/06/23/android-tutorial-making-your-own-3d-list-part-3/ http://developer.sonymobile.com/2010/06/23/android-tutorial-making-your-own-3d-list-part-3/)。但景色却变得看不见了。
我无法使用矩阵的缩放行为,因为它会在每个子视图之间插入间隙。
我还需要知道如何实施以下行为。需求是
一旦用户尝试滚动,它将检查阈值,并且仅当阈值高于配置的阈值时才会滚动。
这些项目循环滚动,从某种意义上说,在最后一个项目之后,滚轮显示第一个项目,依此类推。如果只有一个项目,那么轮子应该填充单个项目。
一旦视图滚动,所有触摸都会被禁用,直到滚轮结束。
轮子应滚动指定的时间(以从后端计算礼物并确定哪个项目应位于视图的中心。
当我们使用 setSelected() 或 setSelection() 方法设置要选择的项目(如 kankan 轮演示(Android 轮)中那样)时,轮应该逐渐减速到指定位置,而不是立即将轮停止到该位置。
对于视角,请看http://developer.android.com/reference/android/graphics/Camera.html http://developer.android.com/reference/android/graphics/Camera.html
你设置相机的位置,然后获取矩阵,并用它来绘制图像。它会为你设置倾斜和缩放。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)