Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/211.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在imagebutton上播放gif动画图像单击_Java_Android_Android Studio - Fatal编程技术网

Java 如何在imagebutton上播放gif动画图像单击

Java 如何在imagebutton上播放gif动画图像单击,java,android,android-studio,Java,Android,Android Studio,我有一个带有一些图片的图像按钮作为它的src。当我点击图片按钮时,我想从那个图片切换到一个动画.gif文件。 我正在使用android studio。 我试图在布局中使用普通方法onCLick=“”,但它不起作用。我得到一张静止图像 每次都会出现正常的静态图像 newon是gif图像 public void buttonClick3(View v) { SharedPreferences sharedPreferences = getSharedPreferences("NAME", C

我有一个带有一些图片的图像按钮作为它的src。当我点击图片按钮时,我想从那个图片切换到一个动画.gif文件。 我正在使用android studio。 我试图在布局中使用普通方法onCLick=“”,但它不起作用。我得到一张静止图像 每次都会出现正常的静态图像

newon是gif图像

public void buttonClick3(View v) {
    SharedPreferences sharedPreferences = getSharedPreferences("NAME", Context.MODE_PRIVATE);
    Boolean e = sharedPreferences.getBoolean("clicked3", false);
    if (!e) {
        aButton3.setImageResource(R.drawable.newon);
        toggleSound.start();
        sharedPreferences = getSharedPreferences("NAME", Context.MODE_PRIVATE);
        SharedPreferences.Editor editor = sharedPreferences.edit();
        editor.putBoolean("clicked3", true);
        editor.commit();
    }
    if(e){
        aButton3.setImageResource(R.drawable.newoff);
        sharedPreferences = getSharedPreferences("NAME", Context.MODE_PRIVATE);
        SharedPreferences.Editor editor = sharedPreferences.edit();
        editor = sharedPreferences.edit();
        editor.putBoolean("clicked3", false);
        editor.commit();
        toggleSound.start();

    }
}

与您的问题无关:您实际上不需要两个if语句。如果。。。否则…语句。(事实上,很多代码甚至不需要在if语句中,因为无论
e
true
还是
false
。只要我的2美分)都会调用它。您的代码需要检查一下。。。我想这就是你问题的答案:我刚刚找到了一个合适的解决方案。参观