Ⅰ 安卓編程如何在點擊確定按鈕時把多選框跟單選框的內容用提示框顯示出來
寫一個提示框類繼承dialog ,
在oncreate()方法下 加入 this.setContentView(R.layout.dialog_reject);
R.layout.dialog_reject.xml就是提示框的布局文件,布局文件里加入你的多選框和單選框,這樣就可以了。這是自定義dialog ,使用方法和dialog一樣。 題主可能習慣使用AlertDialog , 直接用系統的AlertDialog 雖然方便,但功能和樣式受限制,所以一般工作中都會使用自定義的dialog。
Ⅱ android 復選框 怎麼設事件監聽器
/**
*創建復選框對話框
*/
@Override
protectedDialogonCreateDialog(intid){
Dialogdialog=null;
switch(id){
caseDIALOG:
Builderbuilder=newandroid.app.AlertDialog.Builder(this);
//設置對話框的圖標
builder.setIcon(R.drawable.header);
//設置對話框的標題
builder.setTitle("復選框對話框");
builder.setMultiChoiceItems(R.array.hobby,flags,newDialogInterface.OnMultiChoiceClickListener(){
publicvoidonClick(DialogInterfacedialog,intwhich,booleanisChecked){
flags[which]=isChecked;
Stringresult="您選擇了:";
for(inti=0;i<flags.length;i++){
if(flags[i]){
result=result+items[i]+"、";
}
}
editText.setText(result.substring(0,result.length()-1));
}
});
//添加一個確定按鈕
builder.setPositiveButton("確定",newDialogInterface.OnClickListener(){
publicvoidonClick(DialogInterfacedialog,intwhich){
}
});
//創建一個復選框對話框
dialog=builder.create();
break;
}
returndialog;
}
Ⅲ 怎麼樣才能讓android中所彈出的對話框顯示出復選框所選擇的內容
AlertDialog.Builder有現成的API可以實現顯示復選框的內容。
1.創建AlertDialog.Builder並設置數據源
AlertDialog.Builder builder = new Builder(context);
builder.setTitle("復選框"); //設置對話框標題
builder.setIcon(android.R.drawable.ic_menu_more); //設置對話框標題前的圖標
final String[] data = getResources().getStringArray(R.array.radio); //通過resources 得到strings.xml中的字元串數組
boolean[] state = new boolean[data.length];
for(int i=0; i<data.length; i++){
state[i] = sboolean.get(i); //將狀態集合中的數據取出來,下次選擇時候會默認選中
}
2.注冊點擊事件,並記錄復選的數據
/*
* 第一個參數是,數據原,可以是數組,也可以傳strings.xml那的字元串ID,但是建議用數組,因為多選監聽返回的是數組的標下
* 第二個參數是,默認的選中位置,是個boolean數組,對應item的位置
* 第三個是列表點擊監聽事件
*/
builder.setMultiChoiceItems(R.array.radio, state, new DialogInterface.OnMultiChoiceClickListener() {//注冊單選擇監聽事件
@Override
public void onClick(DialogInterface dialog, int which, boolean isChecked) {
if(isChecked){
Toast.makeText(context,"你選擇了: " + data[which], Toast.LENGTH_SHORT).show();
checkBoxData.add(data[which]); //選擇的時候要保存起來
}else{
Toast.makeText(context,"你取消了: " + data[which], Toast.LENGTH_SHORT).show();
checkBoxData.remove(data[which]); //取消選中的時候要刪除掉
}
sboolean.put(which, isChecked); //每次選擇都要記錄下這個item的狀態
}
});
3.增加確定和取消按鍵
builder.setPositiveButton("確認", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(context, "你點了確定,選擇的是: " + checkBoxData.toString(), Toast.LENGTH_SHORT).show();
}
});
4.設置dialog的相關參數,並彈出
builder.setNegativeButton("取消", null); //取消不做任何處理
builder.setCancelable(true); //設置按鈕是否可以按返回鍵取消,false則不可以取消
AlertDialog dialog = builder.create(); //創建對話框
dialog.setCanceledOnTouchOutside(true); //設置彈出框失去焦點是否隱藏,即點擊屏蔽其它地方是否隱藏
dialog.show();
Ⅳ 大家好跪求,用安卓實現一個復選框選中另一個復選框默認選中,代碼怎麼寫呢
在你的選項中加入 android:checked="true" 這樣的代碼也就是默認選中
例如:
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="愛好:"
android:width="50px"
android:height="30px" />
<CheckBox android:text="籃球"
android:id="@+id/like1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<CheckBox android:text="足球"
android:id="@+id/like2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true"/> //我在足球這里加了個默認選中
<CheckBox android:text="下棋"
android:id="@+id/like3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<CheckBox android:text="游泳"
android:id="@+id/like4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
Ⅳ android中的checkBox如何實現單選
Android中checkbox默認為復選框,也就是多選,實現單選的話,可以讓checkbox添加監聽,當已經有一個點擊了,點擊另外一個的時候,修改默認的狀態,實現單選,示例如下:
java">publicstaticinttemp=-1;
checkBox=(CheckBox)parentView.findViewById(R.id.cbox_isselect);
//做個標記
checkBox.setId(groupPosition);
//checkbox監聽
checkBox.setOnCheckedChangeListener(newOnCheckedChangeListener(){
@Override
publicvoidonCheckedChanged(CompoundButtonbuttonView,booleanisChecked){
if(isChecked)
{
//這段代碼來實現單選功能
if(temp!=-1)
{
CheckBoxtempButton=(CheckBox)MyRingBoxActivity.this.findViewById(temp);
if(tempButton!=null)
{
tempButton.setChecked(false);
}
}
//得到當前的position
temp=buttonView.getId();
}else{
temp=-1;
}
}
});