android,如何从左到右扫描alpha动画?

时间:2014-02-28 06:41:44

标签: android animation alpha

我应该显示一个从左到右绘制线条的动画。请看下面的图像。

  • 第一层是背景(没有根线和国家/地区名称的整个图像)
  • 第二层是行和国家/地区名称。

我可以在我的活动中以下列方式使用alpha动画:

mIvRoot = (ImageView) findViewById(R.id.ivRoot);
ObjectAnimator alphaAnim = ObjectAnimator.ofFloat(mIvRoot, "alpha", 0f, 1f);
alphaAnim.setDuration(2000);
alphaAnim.start();

虽然它工作正常,但alpha适用于整个图像。我正在寻找的东西是alpha从左到右适用。因此,用户感觉线条正在绘制。

任何建议都将不胜感激。感谢

enter image description here

2 个答案:

答案 0 :(得分:1)

我以bl.sht的方式暂时解决了我的问题。请与我分享您的想法以解决这个问题。

我在根图像的顶部放置了另一个白色视图(因为我的背景为白色)并为其分配了翻译动画,而不是使用alpha动画像这样:

<View
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@color/White"
                android:id="@+id/viCover"
                android:layout_alignTop="@+id/ivRoot"
                android:layout_alignBottom="@+id/ivRoot"
                android:layout_alignLeft="@+id/ivRoot"
                android:layout_alignRight="@+id/ivRoot"
                android:layout_marginLeft="200dp"/> 

和代码:

ObjectAnimator transRootAnim = ObjectAnimator.ofFloat(mViCover, "translationX", 0f, 1500f);
transRootAnim.setDuration(3000);
transRootAnim.start();

答案 1 :(得分:0)

即使我不明白为什么你没有真正画出那些线条,你可能想看看Romain Guy的this post他也做了类似的事情(实际上几乎相同:))