java - 通过单选按钮将男性或女性设置为整数

标签 java android

我有一个简单的故事应用程序,读者一开始就选择是男性还是女性。我有一个由男孩和女孩组成的广播小组。

然后我想获取此信息并使用它,以便显示正确的性别措辞。他和她。

我用过这个代码

public void onRadioButtonClicked(View view) {
    int radioButtonId = rg.getCheckedRadioButtonId();
    rb = findViewById(radioButtonId);

    if (rb.getText().equals("boy")) {
        gender = 1;
    } else {
        gender = 2;
    }
}

这样,如果选择了男孩,则 int 性别 = 1,否则性别 = 2。

当按下按钮让某人“说话”时,它会查看性别 ==1 是否会显示他,否则会使用她。

我的问题是性别总是==2。我已经使用 Log.i 来检查这一点,即使单击了男孩单选按钮,我似乎也可以将性别设为 1。

请任何人提供任何帮助。

谢谢

最佳答案

我假设错误是因为单选按钮的文本实际上并没有说“男孩”。也许是“男孩”?

无论如何,最好检查 id 而不是文本。假设您使用 xml 创建了单选组,您应该提供按钮 id。例如 ID“男孩”。然后你可以这样做:

public void onRadioButtonClicked(View view) {
    if (rg.getCheckedRadioButtonId() == R.id.boy) {
        gender = 1;
    } else {
        gender = 2;
    }
}

关于java - 通过单选按钮将男性或女性设置为整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52673826/

相关文章:

android - 我如何使用 Android 使用 webView 下载基于 session /cookie 的文件?

android - 在运行时启用/禁用 RTL 支持

java - 如何在 java 中使用递归对单词 "hello"进行排序?

java - 如何获取FF中插件的安装位置?

java - Javac 调试打开和关闭之间是否存在性能差异?

java - 重用 javax.xml.ws.Service 对象安全吗?

Java多线程 - 如何制作线程序列?

android - 如何检查 Activity 是否从通知开始

android - 为什么 NotificationManager 在更新过程中运行如此缓慢?

android - 如何在 Jetpack Compose 中将布局修改器单独应用于每个可放置项?