0

我一直在阅读并应用此页面中的 android 设计:

http://developer.android.com/design/index.html

我想使用以下“动画”(或任何它):

http://www.electronicsweekly.com/blogs/eyes-on-android-updates/2012/01/13/Android%20Design%202.jpg

有人可以帮我开始如何使用这些边界吗?

4

1 回答 1

3

我会这样做:

  1. 扩展您选择的 ScrollView
  2. setStaticTransformationsEnabled(true);在构造函数中调用
  3. 覆盖 onTouchEvent(MotionEvent ev)以跟踪手指的位置
  4. 覆盖getChildStaticTransformation(View child, Transformation t)
  5. 在该函数内部,使用Camera类创建一个 3D 变换矩阵。像围绕 x 轴旋转的东西,旋转的中心是滚动视图的中心。旋转角度应取决于子项的滚动位置和当前手指位置。

编辑:现在我想了很久,你应该做点不同的事。

  • 不要覆盖getChildStaticTransformation(View child, Transformation t),而是drawChild(Canvas canvas, View child, long drawingTime)。这允许您使用绘图缓存 API。(我的第一个链接中的示例)。这意味着首先将子项渲染为位图,从而提高绘图性能并允许您将此线性蓝色应用于视图的透明渐变

您可以在此处此处查看如何使用相机的示例。 是一个带有过度滚动反弹效果的项目。为了使过度滚动效果更酷,您应该在用户松开手指时使用动画。因为我非常喜欢新的 android 动画框架,所以我会使用9 个旧的 android 。我想对于一个有经验的安卓程序员来说,正确地实现这个效果至少需要 1-2 天。

于 2012-04-16T15:24:30.567 回答