【问题标题】:android, how to sweep alpha animation from left to right?android,如何从左到右扫描alpha动画?
【发布时间】:2014-02-28 06:41:43
【问题描述】:

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

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

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

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

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

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

【问题讨论】:

    标签: android animation alpha


    【解决方案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();
    

    【讨论】:

      【解决方案2】:

      尽管我不明白你为什么不实际画这些线,但你可能想看看 Romain Guy 的 this post,他也做了类似的东西(实际上几乎一样 :))

      【讨论】:

      • 似乎这是我的问题的答案。谢谢叶海亚。
      猜你喜欢
      • 2023-03-11
      • 2011-07-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-05
      • 1970-01-01
      • 1970-01-01
      • 2018-12-07
      相关资源
      最近更新 更多