单击时如何更改 ImageButton 的图像

How to change the image of an ImageButton when clicked

我正在尝试制作一个带有播放按钮的媒体播放器,当点击播放按钮时,它会变成暂停按钮。我的代码如下,但每当我点击播放按钮时,按钮就会消失,什么也没有发生。

public class MainActivity extends Activity {
 boolean isPressed = false;
 private ImageButton btnTest;
 @Override
 protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    btnTest =(ImageButton) findViewById(R.id.imageButton2);
    btnTest.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            if(isPressed)
                btnTest.setBackgroundResource(R.drawable.img2);
            else
                btnTest.setBackgroundResource(R.drawable.img3);

            isPressed = !isPressed;
        }

    });

} 

我希望图像在每次点击时在播放和暂停之间切换。我应该怎么做才能获得这种行为?

尝试用 setImageResource(int Res_id) 代替 setBackgroundResource。告诉我它是否有效。

试试这个...

public class MainActivity extends Activity {
    private ImageButton btnTest;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        btnTest =(ImageButton) findViewById(R.id.imageButton2);
        btnTest.setImageResource(R.drawable.default_image); // button not clicked 
        btnTest.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
             btnTest.setImageResource(R.drawable.after_click_image);   // after click it will changed
            }

        });

    }