1

我目前正在开发另一个 android 应用程序。它确实有一个主菜单。到目前为止,它非常简单 - 里面有 4 个按钮。现在我希望该菜单的背景像动态壁纸一样具有动画效果

事实上,我只想使用静态背景图像并水平滑动 1-2 张其他图像。我对此进行了一些研究,发现动态壁纸随 API 2.1 一起提供。这将完全符合我的需求,因为应用程序应该与此 API 向下兼容 - 当查看动画时,RenderScript 为。提出了 API 3.1,大多数教程都建立在此之上。

所以现在我只是错过了从哪里开始的建议。我感谢各种帮助!

根据建议,我尝试了补间动画 - 我非常遵循本教程http://mobile.tutsplus.com/tutorials/android/android-sdk-creating-a-simple-tween-animation/

并且在仿真设备中它的工作就像一个魅力.. 但是当我在我的本机 API 2.1 设备上运行它时,没有显示动画.. 有什么我没有考虑过的吗?

4

1 回答 1

1

首先感谢Class Stacker,他给了我使用 Tween Animations 的建议——这真的非常适合我的需求,谢谢!- 不幸的是,动画没有在 API 2.1 设备上显示。

按照这个教程,我像这样设置我的补间动画“clouds_pass.xml” -

<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false"
android:duration="80000"
android:interpolator="@android:anim/linear_interpolator"
android:fillAfter="true"
>

<translate
    android:fromXDelta="155%p"
    android:toXDelta="-100%p"
    android:repeatCount="infinite"
/>

因为 Activity 像那样调用补间 -

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    ImageView clouds = (ImageView)findViewById(R.id.clouds);
    Animation cloudspass = AnimationUtils.loadAnimation(this,R.anim.clouds_pass);
    clouds.startAnimation(cloudspass);

}

我不确定这可能是什么原因..但从“clouds_pass.xml”中删除 android:duration 标签并设置持续时间

cloudspass.setDuration(80000);

加载动画后修复它 - 现在它按预期工作到 API 2.0 设备。

于 2013-04-26T16:43:01.313 回答