我的问题是你如何检查图像的资源?在我的onClick
方法中,有一个倒计时(我总结为避免长篇文章),在每个tick上随机化一个布尔值。如果为true,则img1
资源设置为headAppear.jpg
。如果为false,则img1
设置为headHide.jpg
。
我会在onClick()
中添加哪些代码来检查图片是headAppear
还是headHide
?我想要做的是,如果我点击img1
并显示headAppear
,score++
。否则,如果它显示headHide
,score--
。
在我的onCreate()
方法中:
ImageView img1 = (ImageView) findViewById(R.id.pic1);
img1.setOnClickListener( this );
//Countdown method here
var = aRandom.nextBoolean();
if( var == true ) {
img1.setImageResource( R.drawable.headAppear );
} else {
img1.setImageResource( R.drawable.headHide );
}
//End of countdown method
在我的onClick(View v)
方法中:
if (v == img1) {
//insert code here
}
答案 0 :(得分:1)
您无法从ImageView
的包含中恢复图像资源我建议您在if / else中设置单独的标记,然后使用它来确定显示的内容。这样你的代码就会变成:
ImageView img1 = (ImageView) findViewById(R.id.pic1);
img1.setOnClickListener(this);
/*Countdown method here*/
var = aRandom.nextBoolean();
if (var==true) {
this.appear = true;
img1.setImageResource(R.drawable.headAppear);
} else {
this.appear = false;
img1.setImageResource(R.drawable.headHide);
}
/*End of countdown method*/
支票:
if (this.appear) {
/*insert code here*/
}
或者您甚至可以使用类可见性制作var
变量。
答案 1 :(得分:1)
如果您确实希望在setImageResource
setTag
时存储资源,也可以{{1}}。