在button.setOnClickListener中添加Toast?

时间:2013-02-22 10:57:27

标签: android button imagebutton

如何在更改图片时添加Toast?

  button = (ImageButton)findViewById(R.id.imageButton1);
    button.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v)  {
            if (bIcon) 
                button.setImageResource(R.drawable.add1);
             else 
                         button.setImageResource(R.drawable.add2);
                bIcon = !bIcon;                                             
        }   });

当我这样做时

 button = (ImageButton)findViewById(R.id.imageButton1);
    button.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v)  {
            if (bIcon) 
                button.setImageResource(R.drawable.add1);
               Toast.makeText(MainActivity.this, "drawable.add1", Toast.LENGTH_SHORT).show();
             else 
                        button.setImageResource(R.drawable.add2);
                 Toast.makeText(MainActivity.this, "drawable.add2", Toast.LENGTH_SHORT).show();
                bIcon = !bIcon;                                             
        }
    });

更改图片不是

1 个答案:

答案 0 :(得分:2)

- 此问题出在您的ifelse循环中。

- 如果我们的if or else condition包含单一陈述不需要在起点和终点,但是当条件中包含多个语句时,你必须使用大括号。

<强>例如

boolean bIcon = false;
button = (ImageButton) findViewById(R.id.imageButton1);
button.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v)  {
        if (bIcon == false) {
            button.setImageResource(R.drawable.add1);
            Toast.makeText(MainActivity.this, "drawable.add1", Toast.LENGTH_SHORT).show();

                        bIcon = true;
        }
        else {
            button.setImageResource(R.drawable.add2);
            Toast.makeText(MainActivity.this, "drawable.add2", Toast.LENGTH_SHORT).show();
            bIcon = false;                
        }                             
    }
});