如何使用 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);
我有一个问题,我想在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);