您的位置:首页 > 移动开发 > Android开发

android中列表选项、单选选项、多选选项对话框的使用

2012-10-11 10:33 531 查看
本文主要介绍了 android中列表选项,单项选项,多项选型对话框的使用,其使用方法的代码如下:

package com.demo.lc;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.Toast;

public class DialogExercise extends Activity implements OnClickListener {
private Button btn_item, btn_singleitem, btn_mutiplyitem;
private String[] str = new String[5];
private AlertDialog mDialog = null;
private int mSelectedItem = 0;
private boolean[] init = new boolean[] { false, true, false, false, false };
private boolean[] mtemp = new boolean[5];

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
super.setContentView(R.layout.main);
for (int i = 0; i < 5; i++) {
str[i] = "item" + i;
}
for (int i = 0; i < init.length; i++) {
mtemp[i] = init[i];

}
System.out.println(mtemp == init);
this.btn_item = (Button) super.findViewById(R.id.btn_item);
this.btn_singleitem = (Button) super.findViewById(R.id.btn_singleitem);
this.btn_mutiplyitem = (Button) super.findViewById(R.id.btn_mutilitem);

this.btn_item.setOnClickListener(this);
this.btn_singleitem.setOnClickListener(this);
this.btn_mutiplyitem.setOnClickListener(this);

}

@Override
public void onClick(View v) {
if (v == this.btn_item) {

this.mDialog = new AlertDialog.Builder(this)
.setTitle("列表选项")
.setIcon(android.R.drawable.ic_dialog_alert)
.setItems(str, new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
DialogExercise.this.mSelectedItem = which;
}
})
.setPositiveButton("确定",
new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog,
int which) {
System.out.println("PositiveButton= "
+ which);
Toast.makeText(DialogExercise.this,
"您选择的是" + str[mSelectedItem], 100)
.show();
}
})
.setNegativeButton("取消",
new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog,
int which) {
System.out.println("NegativeButton= "
+ which);
dialog.dismiss();
}
}).create();
this.mDialog.show();

} else if (v == this.btn_singleitem) {
this.mDialog = new AlertDialog.Builder(this)
.setTitle("单项选择")
.setIcon(android.R.drawable.ic_dialog_alert)
.setSingleChoiceItems(str, 2,
new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog,
int which) {
DialogExercise.this.mSelectedItem = which;

}
})
.setPositiveButton("确定",
new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog,
int which) {
System.out.println("PositiveButton= "
+ which);
Toast.makeText(DialogExercise.this,
"您选择的是" + str[mSelectedItem], 100)
.show();
}
})
.setNegativeButton("取消",
new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog,
int which) {
System.out.println("NegativeButton= "
+ which);
dialog.dismiss();
}
}).create();
this.mDialog.show();

} else if (v == this.btn_mutiplyitem) {

this.mDialog = new AlertDialog.Builder(this)
.setTitle("多项选择")
.setIcon(android.R.drawable.ic_dialog_alert)
.setMultiChoiceItems(str, init,
new DialogInterface.OnMultiChoiceClickListener() {

@Override
public void onClick(DialogInterface dialog,
int which, boolean isChecked) {

}
})
.setPositiveButton("确定",
new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog,
int which) {
System.out.println("PositiveButton= "
+ which);
String temp = " ";
for (int i = 0; i < init.length; i++) {
if (init[i]) {
temp += str[i] + ", ";
}
}

Toast.makeText(DialogExercise.this,
"您选择的是" + temp, 100).show();

for (int i = 0; i < init.length; i++) {

init[i] = mtemp[i];
}
}
})
.setNegativeButton("取消",
new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog,
int which) {
System.out.println("NegativeButton= "
+ which);
dialog.dismiss();
}
}).create();
this.mDialog.show();

}

}
}

效果如下:

当选择单项列表框时的截图:





单击确定后的效果如下:





当选择多项列表框时的截图:





点击确定后的效果如下:





本文出自 “开始跑” 博客,请务必保留此出处http://splend.blog.51cto.com/3717743/967180
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐