簡體   English   中英

如何獲取buttonGroup的選定radioButton的值

[英]How to get value of selected radioButton of buttonGroup

如何獲取所選radioButton值? 我嘗試使用buttonGroup1.getSelection().getActionCommand() (如此處的一些答案中所述)但它不起作用。 另外,我暫時使用此代碼,但我想知道這是否是一個好習慣?

//Consider that maleRButton and femaleRButton are two radioButtons of 
//same buttonGroup
String getGender()
{
    if(maleRButton.isSelected())
    {
        return "Male";
    }
    else if(femaleRButton.isSelected())
    {
        return "Female";
    }
    else
    {
        return null;
    }
}

我嘗試使用 buttonGroup1.getSelection().getActionCommand()

這種方法可行,但由於某種原因,您似乎需要在創建按鈕時手動設置操作命令。 例如:

JRadioButton maleButton = new JRadioButton( "Male" );
maleButton.setActionCommand( maleButton.getText() );

這對我來說似乎有點錯誤,因為如果未設置操作命令,通常操作命令默認為文本。

如果你有幾個按鈕,你可能應該這樣做:

String getSelectedButton()
{  
    for (Enumeration<AbstractButton> buttons = buttonGroup1.getElements(); buttons.hasMoreElements();) {
        AbstractButton button = buttons.nextElement();
        if (button.isSelected()) {
                return button.getText();
        }
    }
    return null;
}

String gender=group.getSelection().getActionCommand();

它會工作,但它顯示空值。

int selectedRadioButtonID = radio_group.getCheckedRadioButtonId();
// If nothing is selected from Radio Group, then it return -1
if (selectedRadioButtonID != -1) {
RadioButton selectedRadioButton = findViewById(selectedRadioButtonID);
String selectedRadioButtonText = selectedRadioButton.getText().toString();
answerList.add(selectedRadioButtonText);
} else {
Toast.makeText(this, "select radio button", Toast.LENGTH_SHORT).show();
                return false;
}

對於細節,檢查這個

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM