[英]Android studio, if button doesn't have drawable
b4.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (b4.getCompoundDrawables() == null) {
if (turn == 1) {
turn = 2;
b4.setBackgroundResource(R.drawable.iks);
} else if (turn == 2) {
turn = 1;
b4.setBackgroundResource(R.drawable.oks);
}
}
}
});
我有可绘制的iks(X)和oks(O)(正在制作XO游戏),我想使用IF命令来检查b4(按钮)是否已经绘制了背景,以便只能对1进行更改。按钮,因此您无法使用已被再次使用的按钮。
您可以使用getBackground
查看是否已设置背景可绘制对象:
if (b4.getBackground() == null)
但是,您应该为井字游戏设计一个“模型”。
这是一个主意:
存储一个二维int数组,该数组可以存储三个可能的值:0、1和2。0表示平方中没有任何值。 1表示有一个十字架,2表示没有。 您可以为这些创建常量:
public static final int EMPTY = 0;
public static final int CROSS = 1;
public static final int NOUGHT = 2;
公开一个称为updateArray(int x, int y, int value)
,该方法更新指定x
和y
位置的值。
每次调用此方法时,都要设置正确视图的drawable。
现在要检查“正方形”中是否没有内容,您只需检查数组是否为EMPTY
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.