如何使用 if 语句禁用 onCreate 方法中的按钮

How to disable a button in onCreate method with if statment

我有一个问题,我想在onCreate方法中禁用一个按钮,请分享在onCreate方法中在运行时禁用任何按钮的方法。

 @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_requests_interface);


  Intent intent = new Intent(this, AdminPopup.class);
    startActivity(intent);


    String fName = getIntent().getStringExtra("fName");
    TextView tfName = (TextView)findViewById(R.id.fName);
    tfName.setText(fName);
    String vuEmail = getIntent().getStringExtra("VUEmail");
    TextView tEmail = (TextView)findViewById(R.id.vuEmail);
    tEmail.setText(vuEmail);

    EditText vuEmailTest = (EditText)findViewById(R.id.vuEmail);
    String email = vuEmailTest.getText().toString();
    String str = email.substring(0,2);
    if(str.equals("bc")){
        String str2 = email.substring(3,9);
        boolean digitsOnly = TextUtils.isDigitsOnly(str2);
        if (digitsOnly){
            Button accButton = (Button)findViewById(R.id.accButton);

        }
    }
    else{
        Button accButton = (Button)findViewById(R.id.accButton);

    }

}

试试这个:

    Button accButton = (Button) findViewById(R.id.accButton);
    accButton.setEnabled(false);

请注意,在您发布的代码中,您将按钮设置为 findViewbyId(),应该是 findViewById()(By 需要大写)。

在xml中使用android:enabled="false"或在代码
中使用accButton.setEnabled(false) 另外,最好通过这种方法检查是数字:

public static boolean isNumeric(String str) {
    try {
        double d = Double.parseDouble(str);
    } catch (NumberFormatException nfe) {
        return false;
    }
    return true;
}

按钮按钮=(按钮)findViewById(R.id.buttonid); button.setVisibility(View.GONE);

这样做:

Button b = (Button) findViewById(R.id.mybutton);
b.setEnabled(false);