Android中怎么利用RadioButton控件實現多選一功能,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
1、將多個RadioButton放在一個RadioGroup里面
<RadioGroup android:id="@+id/radioGroup1" android:layout_width="match_parent" android:layout_height="wrap_content" > <RadioButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="男" android:textColor="#FFFFFF" /> <RadioButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="女" android:textColor="#FFFFFF" /> </RadioGroup>
2、在RadioGroup里面取出每個RadioButton
public void onClick(View v) {
// TODO Auto-generated method stub
int len = radioGroup1.getChildCount();
for (int i = 0; i < len; i++) {
RadioButton radio = (RadioButton) radioGroup1.getChildAt(i);11 }
}3、檢查每個RadioButton是否被選取
if (radio.isChecked()) {
break;
}4、取出被選取的那個RadioButton里面的值
Toast.makeText(Activity01.this, radio.getText(), Toast.LENGTH_LONG).show();
三、代碼實例
效果圖:
代碼:
fry.Activity01
package fry;
import com.example.RadioButtonDemo1.R;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
import android.widget.Toast;
public class Activity01 extends Activity {
private Button btn_chooseGender;
private RadioGroup radioGroup1;
private TextView tv_answer;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity01);
btn_chooseGender = (Button) findViewById(R.id.btn_chooseGender);
radioGroup1 = (RadioGroup) findViewById(R.id.radioGroup1);
tv_answer = (TextView) findViewById(R.id.tv_answer);
/*
* RadioButton實現多選一方法
* 1、將多個RadioButton放在一個RadioGroup里面
* 2、在RadioGroup里面取出每個RadioButton
* 3、檢查每個RadioButton是否被選取
* 4、取出被選取的那個RadioButton里面的值
*/
btn_chooseGender.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
int len = radioGroup1.getChildCount();
for (int i = 0; i < len; i++) {
RadioButton radio = (RadioButton) radioGroup1.getChildAt(i);
if (radio.isChecked()) {
Toast.makeText(Activity01.this, radio.getText(),
Toast.LENGTH_LONG).show();
break;
}
}
}
});
}
}/RadioButtonDemo1/res/layout/activity01.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@android:color/black" android:orientation="vertical" > <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:text="性別" android:textAppearance="?android:attr/textAppearanceLarge" android:layout_gravity="center_horizontal" android:textColor="#FFFFFF" /> <RadioGroup android:id="@+id/radioGroup1" android:layout_width="match_parent" android:layout_height="wrap_content" > <RadioButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="男" android:textColor="#FFFFFF" /> <RadioButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="女" android:textColor="#FFFFFF" /> </RadioGroup> <Button android:id="@+id/btn_chooseGender" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="選擇性別" android:textColor="#FFFFFF" /> /> <TextView android:id="@+id/tv_answer" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="" android:textAppearance="?android:attr/textAppearanceLarge" android:layout_gravity="center_horizontal" android:textColor="#FFFFFF" /> </LinearLayout>
四、收獲
1、
android:textColor="#FFFFFF"
設置顏色,直接用#FFFFFF
2、
android:layout_gravity="center_horizontal"
文字居中顯示
3、
RadioButton在RadioGroup里面實現多選一
4、
android:background="@android:color/black"
設置黑色,系統自帶顏色
5、
int len = radioGroup1.getChildCount();
RadioGroup獲取孩子數量
6、
RadioButton radio = (RadioButton) radioGroup1.getChildAt(i);
RadioGroup獲取孩子
7、
if (radio.isChecked())
判斷RadioButton是否被選取
8、
Toast.makeText(Activity01.this, radio.getText(),Toast.LENGTH_LONG).show();
看完上述內容,你們掌握Android中怎么利用RadioButton控件實現多選一功能的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。