Java 知道在RadioGroup上选中了哪个单选按钮

Java 知道在RadioGroup上选中了哪个单选按钮,java,android,Java,Android,我想知道哪个单选按钮被选中执行操作 但这不起作用。在日志中,我的ID是-1 mradioGroup = (RadioGroup) rootView.findViewById(R.id.choix_plateforme); mradioGroupt = (RadioButton) rootView.findViewById(R.id.ps4); mradioGroupa = (RadioButton) rootView.findViewById(R.id.xbox)

我想知道哪个
单选按钮被选中执行操作

但这不起作用。在日志中,我的ID是-1

mradioGroup = (RadioGroup) rootView.findViewById(R.id.choix_plateforme);
        mradioGroupt = (RadioButton) rootView.findViewById(R.id.ps4);
        mradioGroupa = (RadioButton) rootView.findViewById(R.id.xbox);
        mradioGroupw = (RadioButton) rootView.findViewById(R.id.pc);

        int selectedId = mradioGroup.getCheckedRadioButtonId();
        Log.d(getClass().getName(), "Plateforme_Choix = " + selectedId);
        // find which radioButton is checked by id

        if(mradioGroupt.isChecked()) {
            string_plateforme = "one";
        } else if(mradioGroupa.isChecked()) {
            string_plateforme = "two";;
        } else if (mradioGroupw.isChecked()){
            string_plateforme = "oops";
        }
        else {
            string_plateforme = "wrong";
        }
我的
if
语句也不起作用

<RadioGroup
    android:id="@+id/choix_plateforme"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center_horizontal"
    android:orientation="horizontal">

    <RadioButton
        android:id="@+id/ps4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Playstation 4" />

    <RadioButton
        android:id="@+id/xbox"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="XBOX ONE" />

    <RadioButton
        android:id="@+id/pc"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Ordinateur" />

</RadioGroup>


你能告诉我哪里错了吗?我不想要新代码,但如果可以的话,请向我解释我的错误。

尝试设置一个
OnCheckedChangeListener
更改listener:

        radiogroup.setOnCheckedChangeListener(new OnCheckedChangeListener()
        {
            @Override
            public void onCheckedChanged(RadioGroup group, int checkedId)
            {
                switch(checkedId)
                {
                case R.id.ps4:
                     Log.d(getClass().getName(), "Plateforme_Choix =ps4");
                    break;
                case R.id.xbox:
                    Log.d(getClass().getName(), "Plateforme_Choix =xbox");
                    break;
                case R.id.pc:
                    Log.d(getClass().getName(), "Plateforme_Choix =pc");
                    break;
                }
            }
        });

开始时没有选中的单选按钮。因此,只有当用户真正点击其中一个单选按钮时,才会得到选中的单选按钮。如果您始终希望至少选中一个单选按钮,则可以通过编程方式或通过属性
android:checked=“true”