[英]How can I know which radio button is selected in Android studio
我有3個單選按鈕,一旦單擊其中任何一個,它應該更新2個文本視圖。 名稱的一個文本視圖和價格的其他文本視圖。 當我單擊單選按鈕時,名稱會更新,但是我面臨着如何從數組中獲取商品價格的問題。 每個單選按鈕都有不同的定價。
碼:
pizzaSizeRadioGroup = (RadioGroup) findViewById(R.id.radioGroup);
pizzaSizeRadioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
// Radio button checked
sizeSelect = (RadioButton) findViewById(checkedId);
selectedSize.setText(sizeSelect.getTag().toString());
// how to display the price from array
sizePrice = array_price_list[].getItem_price();
totalPriceDisplay.setText(sizePrice);
}
});
您可以實現開關RadiogroupcheckedId
pizzaSizeRadioGroup =(RadioGroup)findViewById(R.id.radioGroup);
pizzaSizeRadioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener()
{
public void onCheckedChanged(RadioGroup group, int checkedId) {
switch(checkedId){
case R.id.radio0://Radio button id
// do operations specific to this selection
break;
case R.id.radio1://Radio button id
// do operations specific to this selection
break;
case R.id.radio2://Radio button id
// do operations specific to this selection
break;
}
}
});
或檢查選定的單選按鈕
int selectedId = pizzaSizeRadioGroup.getCheckedRadioButtonId();
尚不清楚您擁有的價格數組中的值是什么,或者getItem_price()方法的實現是什么。
但是似乎您已經在單選按鈕的標記中設置了名稱,這就是為什么您能夠獲取它並填充selectedSize textview的原因。
據我了解您的問題,您可以采取兩種方法
方法1:創建具有名稱和價格以及ID的披薩對象的列表。 在單選按鈕的標簽中設置ID。 這樣,您既可以使用id來獲取名稱和價格,也可以通過radioButton.getTag()獲得表單。
方法2:將名稱和價格用|連接,例如size1 | 25,並將其設置為單選按鈕的標簽。 然后,可以在getTag上使用split來獲取名稱和價格。
希望這可以幫助您解決問題。
為此,您可以使用開關,請遵循此
radiobuttoncheck.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener()
{
public void onCheckedChanged(RadioGroup rgroup, int r_id) {
switch(r_id){
case R.id.rbid1:
//show toast here to get idea
break;
case R.id.rbid2:
//show toast here to get idea
break;
}
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.