动画在模拟器中不起作用

问题描述 投票:0回答:4

我可以在模拟器中加载动画..它可以在任何真实设备上正常工作..

public class MainActivity extends Activity {

    private ImageView imgView;
    private Animation animation;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        animation = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.grow);
        animation.setRepeatCount(50); // Repeat animation infinitely
        animation.setRepeatMode(Animation.REVERSE); 

        imgView = (ImageView) findViewById(R.id.imgView);
        imgView.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub


                imgView.startAnimation(animation);      



                new Handler().postDelayed(new Runnable() {
                    public void run() {

                        Intent it = new Intent(getApplicationContext(), MyWebView.class);
                        startActivity(it);

                    }
                }, 5000);


            }
        });
    }

我的动画 xml 文件如下

<rotate
xmlns:android="http://schemas.android.com/apk/res/android"
            android:fromDegrees="0"
            android:toDegrees="360"
            android:pivotX="50%"
            android:pivotY="50%"
            android:duration="50" />
android animation android-emulator
4个回答
3
投票

对于任何在使用

ObjectAnimator
时遇到类似问题的人,就我而言,我必须在模拟器上启用开发人员设置,然后进入“设置”>“开发人员选项”>“绘图”部分

在这个“绘图”部分中,您会发现每种动画类型的不同选项,在我的例子中,“动画器持续时间比例”关闭,将其设置为“1x”后,我开始在模拟器上看到动画。


2
投票

我认为您可能在模拟器中禁用了动画: 检查:

设置>显示>动画..

希望能帮助您解决问题


0
投票

UI 测试可能会禁用模拟器或设备上的动画,如果您希望它们恢复,您需要手动启用

Developer options
并在
Drawing
部分一一将其重新打开。

或者也许您可以通过在更改应用程序模块时运行 ui 测试来再次启用它们

build.gradle

android {
    ...
    testOptions {
       ...
       animationsDisabled = false
       ...
    }
    ...
}

0
投票

在 Android 设置中禁用辅助功能 > 颜色和动作 > 删除动画Remove Animations option

© www.soinside.com 2019 - 2024. All rights reserved.