如何禁用按钮并使其显示为一个?

时间:2016-06-25 23:19:16

标签: android android-button

我正在设计一个井字游戏。

游戏的布局是LinearLayout(垂直),它有一个按钮(重置),一个TableLayout和另一个按钮(提交)。 TableLayoutTableRow s,而Button则为TableLayout

我的设计理念是,当你点击提交时,它会将最后按下的按钮(在TableLayout中)作为“用户输入”发送到正在运行的游戏,然后在每次移动后,{{1更新以反映更改(文本更改以反映哪个玩家拥有该点,禁用按钮的可点击性,以及为什么不亮的颜色)。

private void updateButton(Button button, char claimant)
{
    button.setText(claimant == 'X' ? "X" : claimant == 'O' ? "O" : " ");
    button.setTextColor(claimant == 'X' ? 0x500000 : 
                        claimant == 'O' ? 0x332c2c :
                                          button.getCurrentTextColor());
    button.setClickable(claimant == ' ');
}

我尝试在updateButton()的末尾添加这些行,似乎没有任何效果:

button.setWillNotDraw(false);
button.bringToFront();
button.invalidate();
button.postinvalidate();

我需要做的是 - 禁用制作按钮并使其显示为一个。

0 个答案:

没有答案