如何使用 RadioGroup 将单选按钮值与字符串进行比较
how to compare Radio Button value to string using RadioGroup
我正在创建应用程序,我在其中从 RadioGroup 获取单选按钮值
当我比较 if 语句中的值时,它不起作用。这是我正在使用的 Java 代码。
if(radioQuizeGroup.getText() == "History"){
Log.d("History", "Activity");
Toast.makeText(StartQuize.this,"History sss ss ", Toast.LENGTH_SHORT).show();
}
else{
Log.d("History", "Error ");
}
我在错误日志中收到错误,
这是错误日志
01-05 07:15:02.885: D/gralloc_goldfish(2035): Emulator without GPU emulation detected.
01-05 07:15:04.165: I/Choreographer(2035): Skipped 43 frames! The application may be doing too much work on its main thread.
01-05 07:15:05.245: D/dalvikvm(2035): GC_FOR_ALLOC freed 86K, 5% free 3139K/3280K, paused 18ms, total 32ms
01-05 07:15:15.236: D/History(2035): Error
请帮助我
切勿使用 ==
运算符比较字符串,而是使用 equals
方法:
if("History".equals(radioQuizeGroup.getText())){
Log.d("History", "Activity");
Toast.makeText(StartQuize.this, "History sss ss ", Toast.LENGTH_SHORT).show();
} else {
Log.d("History", "Error ");
}
This question 有一个很好的答案,可以对此进行更多解释。
当然,这假定 radioQuizeGroup
实际上是一个具有 getText
方法的小部件,因为 RadioGroup
没有...
推荐使用
if(radioQuizeGroup.getText().equals("History"))
而不是
if(radioQuizeGroup.getText() == "History")
因为==
比较对象的位置而.equals()
比较对象的值
我会使用如下所示的所选项目 ID 进行检查
int selectedId = radioQuizeGroup.getCheckedRadioButtonId();
if(selectedId == RadioButton1.getId()) //Id of the RadioButton1
{
//do something here
}
else
{
//else do something here
}
我正在创建应用程序,我在其中从 RadioGroup 获取单选按钮值 当我比较 if 语句中的值时,它不起作用。这是我正在使用的 Java 代码。
if(radioQuizeGroup.getText() == "History"){
Log.d("History", "Activity");
Toast.makeText(StartQuize.this,"History sss ss ", Toast.LENGTH_SHORT).show();
}
else{
Log.d("History", "Error ");
}
我在错误日志中收到错误,
这是错误日志
01-05 07:15:02.885: D/gralloc_goldfish(2035): Emulator without GPU emulation detected.
01-05 07:15:04.165: I/Choreographer(2035): Skipped 43 frames! The application may be doing too much work on its main thread.
01-05 07:15:05.245: D/dalvikvm(2035): GC_FOR_ALLOC freed 86K, 5% free 3139K/3280K, paused 18ms, total 32ms
01-05 07:15:15.236: D/History(2035): Error
请帮助我
切勿使用 ==
运算符比较字符串,而是使用 equals
方法:
if("History".equals(radioQuizeGroup.getText())){
Log.d("History", "Activity");
Toast.makeText(StartQuize.this, "History sss ss ", Toast.LENGTH_SHORT).show();
} else {
Log.d("History", "Error ");
}
This question 有一个很好的答案,可以对此进行更多解释。
当然,这假定 radioQuizeGroup
实际上是一个具有 getText
方法的小部件,因为 RadioGroup
没有...
推荐使用
if(radioQuizeGroup.getText().equals("History"))
而不是
if(radioQuizeGroup.getText() == "History")
因为==
比较对象的位置而.equals()
比较对象的值
我会使用如下所示的所选项目 ID 进行检查
int selectedId = radioQuizeGroup.getCheckedRadioButtonId();
if(selectedId == RadioButton1.getId()) //Id of the RadioButton1
{
//do something here
}
else
{
//else do something here
}