我的应用程序中有一个按钮和一个ImageView。 我想要做的是当我按下按钮然后ImageView上的图像将改变。 我只有两个图片文件。
我想要做的是 - 如果第一张图片链接到ImageView,而不是通过点击按钮将其更改为pic2,如果pic2已链接,则单击该按钮会将其更改回第一张图片文件。
这是我试图使用的onClick方法:
public void onClick(View v) {
ImageView ib1 = (ImageView)findViewById(R.id.imageView1)
View p1 = findViewById(R.drawable.pic1);
if(ib1.getResources()==R.drawable.pic1){
ib1.setImageResource(R.drawable.pic2);
}else{
ib1.setImageResource(R.drawable.pic1);
}
}
感谢您提供任何帮助
答案 0 :(得分:10)
我建议您每次更改图像时都设置ImageView
的信息标记,而不是检查图像,例如:
if(ib1.getTag() != null && ib1.getTag().toString().equals("pic1")){
ib1.setImageResource(R.drawable.pic2);
ib1.setTag("pic2");
} else {
ib1.setImageResource(R.drawable.pic1);
ib1.setTag("pic1");
}
答案 1 :(得分:0)
private ImageView ib1;
private int currentImage;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ib1 = (ImageView) findViewById(R.id.imageView1);
currentImage = R.drawable.pic1;
}
public void onClick(View view){
currentImage = (currentImage == R.drawable.pic1) ? R.drawable.pic2 : R.drawable.pic1;
ib1.setImageResource(currentImage);
}