gpt4 book ai didi

java - 调用setEnabled(false)后按钮仍然可以再按一次

转载 作者:行者123 更新时间:2023-12-02 03:23:22 27 4
gpt4 key购买 nike

单击按钮时,我立即将 setEnabled 调用为 false,但这不会禁用该按钮,我必须再次按下才能禁用。

我尝试将 setEnabled 放在不同的位置,但结果相同。

chooseLeft.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
chooseLeft.setEnabled(false);
chooseRight.setEnabled(true);
docRefPosts.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
@Override
public void onComplete(@NonNull Task<DocumentSnapshot> task) {
if (task.isSuccessful()) {
if(!chooseRight.isEnabled())
docRefPosts.update("votesForRight", FieldValue.increment(-1));
docRefPosts.update("votesForLeft", FieldValue.increment(1));
}
}
});
}
});

chooseRight.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
chooseRight.setEnabled(false);
docRefPosts.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
@Override
public void onComplete(@NonNull Task<DocumentSnapshot> task) {
if (task.isSuccessful()) {
if(!chooseLeft.isEnabled())
docRefPosts.update("votesForLeft", FieldValue.increment(-1));
docRefPosts.update("votesForRight", FieldValue.increment(1));
}
}
});
chooseLeft.setEnabled(true);
}
});

它应该起到单选按钮的作用,一旦选择,一次只能选择一个。

最佳答案

如果您希望取消按钮点击,还需要使用setClickable(false)

chooseLeft.setClickable(false);
chooseLeft.setEnabled(false);
chooseRight.setClickable(true);
chooseRight.setEnabled(true);

关于java - 调用setEnabled(false)后按钮仍然可以再按一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56917350/

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