gpt4 book ai didi

java - Android 禁用按钮网格

转载 作者:行者123 更新时间:2023-12-01 10:06:54 26 4
gpt4 key购买 nike

我有一个包含很多按钮的网格,是否可以禁用该网格,从而导致所有按钮被禁用?

原因是在用户单击按钮回答问题后,会检查答案并计算分数等,但如果我在发生这种情况时继续按下按钮,它会继续回答下一个问题,依此类推,即使我使用处理程序来等待。禁用只是暂时的,在计算完所有内容后,它们会再次启用。

我该如何阻止这个?无需手动禁用每个按钮。

提前致谢。

编辑:

                GridLayout numgrid = (GridLayout) findViewById(R.id.numbersGrid);
GridLayout lettergrid = (GridLayout) findViewById(R.id.lettersGrid);
numgrid.setEnabled(false);
lettergrid.setEnabled(false);

我尝试了上面的代码不起作用,因为我也需要它。

最佳答案

显然似乎没有一种“简单”的方法来解决这个问题。您可以做的是将布局中的所有按钮作为数组获取,然后循环遍历它们。类似于以下方法,它禁用 GridLayout 中的所有按钮:

private void disableButtons(GridLayout layout) {

// Get all touchable views
ArrayList<View> layoutButtons = layout.getTouchables();

// loop through them, if they are an instance of Button, disable it.
for(View v : layoutButtons){
if( v instanceof Button ) {
((Button)v).setEnabled(false);
}
}
}

然后只需传入您的网格布局:

GridLayout numGrid = (GridLayout) findViewById(R.id.numbersGrid);
GridLayout letterGrid = (GridLayout) findViewById(R.id.lettersGrid);

disableButtons(numGrid);
disableButtons(letterGrid);

关于java - Android 禁用按钮网格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36380680/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com