[英]How to check if an imageview has an image in it and skip over the image to the next imageview
有点像子手
如何跳过imageview中是否有图像并检查其中是否有图像尝试检查imageView中是否有图像
码
final boolean imageThere = mImageView17.setBackgroundResource(null);
public void image6(){
randomNumber();
final int thisLetter = currentLetter;
final boolean imageThere = mImageView17.setBackgroundResource(null);
mImageView6 = (ImageView) findViewById(R.id.imageView6);
mImageView6.setImageResource(thisLetter);
mImageView6.bringToFront();
mImageView17 = (ImageView)findViewById(R.id.imageView17);
mImageView6.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
if (imageThere == false) {
mImageView17.setImageResource(thisLetter);
mImageView17.bringToFront();
mImageView6.setImageResource(R.drawable.whitespace);
} else {
mImageView18.setImageResource(thisLetter);
mImageView18.bringToFront();
mImageView6.setImageResource(R.drawable.whitespace);
}
}
});
mImageView17.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
mImageView6.setImageResource(thisLetter);
mImageView6.bringToFront();
mImageView17.setImageResource(R.drawable.whitespace);
}
});
}
基本上我想检查ImageView以查看imageview 17中是否有图像,如果存在,请跳过17并将imageresource 6添加到imageview18
我还想确保如果我对另一个imageview17执行此操作时,当我在单击image view 17时将相同的代码添加到7或8的imageview 6中时,不会弄乱
我该如何解决这个问题?
if (mImageView17.getDrawable() != null) {
// I already have a bitmap
}
getDrawable
的文档说:
返回视图的可绘制对象;如果未分配任何可绘制对象,则返回null。
我认为最好将游戏状态存储在其他一些专门用于存储该信息的变量/对象中,而不要依赖UI来为您存储游戏状态。
因此,例如,如果用户得到18个猜测,则可以存储一个整数,该整数表示用户已经猜测了多少次。 然后,基于该int,您将决定如何更新UI(用于设置图像的图像视图)。 我不知道您的游戏的确切机制,因此我可能对此进行了简化,但是不管您的游戏机制如何,将游戏状态存储在某些对象中的总体方法应该是可行的。
这样,您始终可以访问游戏状态,无论您需要什么状态,都可以使用该int在游戏继续进行时相应地更新UI。
您可以使用getDrawable()
来检查可绘制对象是否已设置。 检查每个imageview
并继续循环。 来源 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.