Android 一经检查就无法工作
我有以下问题:Android 一经检查就无法工作,android,oncheckedchanged,Android,Oncheckedchanged,我有以下问题: if(Cuadrado.isChecked()==true) 这是完整的代码: @Override public void onCheckedChanged(RadioGroup group, int checkedId) { String dato5 = DatoMath.getText().toString(); if (Cubo.isChecked()==true) { if (dato5.equals("")) {
if(Cuadrado.isChecked()==true)
这是完整的代码:
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
String dato5 = DatoMath.getText().toString();
if (Cubo.isChecked()==true) {
if (dato5.equals("")) {
Toast toast = Toast.makeText(getApplicationContext(), "no hay datos", Toast.LENGTH_LONG);
toast.setGravity(Gravity.CENTER | Gravity.LEFT, 0, 0);
toast.show();
} else {
int datofinal = Integer.parseInt(dato5);
int final3 = (int) Math.pow(datofinal, 2);
Resultado.setText("" + final3);};
if (Cuadrado.isChecked() == true) {
if (dato5.equals("")) {
Toast toast = Toast.makeText(getApplicationContext(), "no hay datossssss", Toast.LENGTH_SHORT);
toast.setGravity(Gravity.CENTER_VERTICAL | Gravity.RIGHT, 0, 0);
toast.show();
} else {
int datofinal2 = Integer.parseInt(dato5);
int final4 = (int) Math.pow(datofinal2, 3);
Resultado.setText("" + final4);
};
为什么要故意使代码复杂化,只需编写:
if (Cubo.isChecked())
{
//do whatever you want to do
}
isChecked方法返回一个布尔值,因此可以直接将其写入if条件中
还有一件事,你为什么要在else语句后面加一个分号[;]右大括号[}],用另一个右大括号[}]替换这个分号?谢谢你的帮助非常有效,这是“运行完美cubo,但部分cuadrado不起作用”的一部分按下cuadrado不起作用不明白为什么,如果你开发出相应的逻辑,就按cubo键。我刚才看到一件事,为什么你在else语句后面加一个分号(;)来结束大括号(}),用另一个结束大括号(})来替换那个分号呢?任何时候都德,我也应该把它添加到我的答案中,这样任何查看答案的人都会得到完整的答案:)
@Override
public void onCheckedChanged(RadioGroup group, int checkedId){
switch(checkedId){
case R.id.rbtn1:
// radio button 1 checked related code
break;
case R.id.rbtn2:
// radio button 2 checked related code
break;
}
}