如何禁用android中的按钮?

时间:2013-02-19 13:06:30

标签: android

我有一个登录页面,有2个文本域用户名,密码和按钮“登录”按钮。 当弹出用户名或密码未输入警报时, 当我突然点击此登录按钮时,会弹出2个警报, 因为不仅仅是点击。 我需要禁用该按钮并在下次单击期间启用。我该怎么办?

3 个答案:

答案 0 :(得分:1)

要禁用按钮,您必须致电

yourButton.setEnabled(false)

在Button实例上。要重新启用它,请致电:

yourButton.setEnabled(true)

答案 1 :(得分:0)

创建如下方法

    boolean checkit= true;
private void showHide1() {

    if (checkit) {

    // first click
    } else {
    // second click
    }
    checkit= !checkit;
}

在您的按钮上单击添加方法showHide1();

答案 2 :(得分:0)

你可以将黑带的解决方案与我的相结合。

EditText中输入文字后,在您的EditText启用停用按钮上添加TextWatcher。< / p>

@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {

    charCount = Integer.valueOf(s.length());

    if (charCount > 0)  {           
        // ENABLE THE BUTTON
        boolean blnButtonStatus = YOUR_BUTTON.isEnabled();
        if (blnButtonStatus== false)    {
            YOUR_BUTTON.setEnabled(true);
        }

    } else if (charCount == 0)  {
        // DISABLE THE BUTTON
        YOUR_BUTTON.setEnabled(false);
    }
}

@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
    // DO NOTHING HERE
}

@Override
public void afterTextChanged(Editable s) {
    // DO NOTHING HERE
}

这样,如果密码和/或用户名字段中没有输入任何内容,代码将自动禁用Button。没有意外点击。