如何解决Android Studio-选择在广播组中按下哪个单选按钮不起作用
我现在是一名单身学生,我正在开发一个简单的比萨应用程序,以巩固我对单选按钮和组的了解
我有一个单选按钮组,内部有3个按钮,然后尝试打印在文本视图中按下了哪个单选按钮。
这是单选组/按钮的XML代码
<RadioGroup
android:id="@+id/radioGroup"
android:layout_width="320dp"
android:layout_height="53dp"
android:orientation="horizontal"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.939"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.787">
<RadioButton
android:id="@+id/tomato"
android:layout_width="100dp"
android:layout_height="50dp"
android:text="tomato"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.079"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.664" />
<RadioButton
android:id="@+id/chilli"
android:layout_width="100dp"
android:layout_height="50dp"
android:text="chilli"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.412"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.664" />
<RadioButton
android:id="@+id/BBQ"
android:layout_width="100dp"
android:layout_height="50dp"
android:text="BBQ"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.74"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.664" />
</RadioGroup>
<Button
android:id="@+id/sauce"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="sauce"
android:onClick="showSelectedItem"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.517"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.691" />
<TextView
android:id="@+id/sauceResult"
android:layout_width="346dp"
android:layout_height="36dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.502"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.92" />
然后我的Java代码如下:
public void showSelectedItem(View view){
RadioGroup rg = view.findViewById(R.id.radioGroup);
RadioButton rb;
int id = rg.getCheckedRadioButtonId();
rb = view.findViewById(id);
TextView text = view.findViewById(R.id.sauceResult);
text.setText("your sauce is: " + rb.getText());
}
我当前的输出是当我选择一个选项并按下按钮以显示应用关闭时显示的文本,并且显示的提示是“ tut3_1意外关闭”
解决方法
设置此
rb = view.findViewById(id);
TextView text = view.findViewById(R.id.sauceResult);
之前
int id = rg.getCheckedRadioButtonId();
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。