我需要像图片中那样实现一个类似轮子的控制(老虎机)。
但是需要对每个项目的边缘(项目之间的位置)进行平滑处理,使其看起来像地球一样的地球。这是从 iPhone 库中获取的 iPhone 应用程序的屏幕截图。我想要它在android中。我检查了 kankan 轮(Android 轮),但它不能满足我的需要。然而,我需要它的循环行为。我还检查了以下链接。
http://developer.sonymobile.com/2010/06/23/android-tutorial-making-your-own-3d-list-part-3/
我玩过画布和矩阵,其中一些值用于方法 pretranslate post translate scale 等。但我不知道它是如何工作的,它对倾斜的特定值会产生什么影响等。当我与 UI 设计师讨论时,他们告诉我要实现此屏幕设计,请使用“倾斜”或“透视”属性。但我不知道如何在 android 中对图像进行倾斜或应用透视。我尝试在自定义列表视图的 on drawChild() 方法中应用一些值来倾斜(使用此链接的列表视图实现http://developer.sonymobile.com/2010/06/23/android-tutorial-making -your-own-3d-list-part-3/ ) 。但视图变得不可见。
我不能使用矩阵的缩放行为,因为它会在每个子视图之间插入间隙。
我还需要知道如何实现以下行为。需求是
一旦用户尝试滚动,它将检查阈值并仅在阈值高于配置的阈值时才滚动。
项目循环滚动,从某种意义上说,在最后一个项目之后,轮子显示第一个项目,依此类推。如果只有一项,则轮子应填满单项。
滚动视图后,所有触摸都将被禁用,直到滚轮结束。
滚轮应该滚动指定的时间(从后端计算礼物并确定哪个项目应该位于视图的中心。
当我们使用 setSelected() 或 setSelection() 方法设置要选择的项目时,如 kankan wheel 演示(Android 轮子),轮子应该逐渐减速到指定位置,而不是立即停止轮子到该位置。