我的应用程序有一个小的Web视图,我希望在页面加载完成后将其设置为动画。我的代码如下所示:
view.setVisibility(View.VISIBLE);
TranslateAnimation anim=new TranslateAnimation(0.0f, 0.0f,
view.getLayoutParams().height, 0.0f);
anim.setDuration(5);
anim.setInterpolator(new LinearInterpolator());
view.startAnimation(anim);
它动画很好,但我似乎无法控制速度。我已经将setDuration()的值设置为5,500,500,5000000 - 所有这些都没有明显的效果。
我还需要做些什么来控制动画持续时间吗?
BTW我的基础SDK是1.6。
答案 0 :(得分:1)
我使用XML方法为布局设置动画。
translate.xml
<?xml version="1.0" encoding="utf-8"?>
<set
xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator" >
<translate
android:fromYDelta="-100%"
android:toYDelta="0"
android:duration="500" />"
/>
</set>
要控制动画持续时间,您可以尝试将android:duration ="500"
更改为您需要的值。
layout_anim_controller.xml
<layoutAnimation xmlns:android="http://schemas.android.com/apk/res/android"
android:animationOrder="reverse"
android:animation="@anim/translate" />
设置布局的动画
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
>
<WebView
android:id="@+id/webview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layoutAnimation="@anim/layout_anim_controller"
/>
</LinearLayout>
也许这对正确的方向有所帮助。
答案 1 :(得分:0)
这是我在测试中发现的内容。
同样,YMMV和这可能只适用于WebViews。