package com.su.testalldialog;import java.util.ArrayList;import android.app.Activity;import android.app.AlertDialog;import android.app.AlertDialog.Builder;import android.content.Context;import android.content.DialogInterface;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.AdapterView;import android.widget.AdapterView.OnItemSelectedListener;import android.widget.ArrayAdapter;import android.widget.AutoCompleteTextView;import android.widget.Button;import android.widget.EditText;import android.widget.ImageView;import android.widget.Spinner;import android.widget.Toast;public class TestAllDialogActivity extends Activity {String[] weekdays;Context context;public void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);context = this;weekdays = new String[] { "Sun", "Mon", "Tue", "Wed" };Button button1 = (Button) findViewById(R.id.button1);Button button2 = (Button) findViewById(R.id.button2);Button button3 = (Button) findViewById(R.id.button3);Button button4 = (Button) findViewById(R.id.button4);Button button5 = (Button) findViewById(R.id.button5);Button button6 = (Button) findViewById(R.id.button6);button6.setOnClickListener(listener);button5.setOnClickListener(listener);button1.setOnClickListener(listener);button2.setOnClickListener(listener);button3.setOnClickListener(listener);button4.setOnClickListener(listener);initSpinner();initAutocompletetextview();}private void initAutocompletetextview() {AutoCompleteTextView autocompletetextview = (AutoCompleteTextView) findViewById(R.id.autocompletetextview);ArrayAdapter<String> adapter = new ArrayAdapter<String>(context,android.R.layout.simple_spinner_dropdown_item, weekdays);// 实现简单的adapterautocompletetextview.setAdapter(adapter);}private void initSpinner() {Spinner spinner = (Spinner) findViewById(R.id.spinner);spinner.setOnItemSelectedListener(slistener);ArrayAdapter<String> adapter = new ArrayAdapter<String>(context,android.R.layout.simple_spinner_item, weekdays);// 实现简单的adapteradapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);// 实现选项的样式spinner.setAdapter(adapter);}private OnItemSelectedListener slistener = new OnItemSelectedListener() {@Overridepublic void onItemSelected(AdapterView<?> arg0, View arg1, int arg2,long arg3) {toast(weekdays[arg2]);}@Overridepublic void onNothingSelected(AdapterView<?> arg0) {// TODO Auto-generated method stub}};int index = 0;// 用来标记哪一项被选择private OnClickListener listener = new OnClickListener() {@Overridepublic void onClick(View v) {Builder dialog = new AlertDialog.Builder(context);switch (v.getId()) {case R.id.button1:dialog.setIcon(R.drawable.ic_launcher);dialog.setTitle("简单选择对话框");dialog.setItems(weekdays,new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog,int which) {toast(weekdays[which]);}});dialog.show();break;case R.id.button2:dialog.setIcon(R.drawable.ic_launcher);dialog.setTitle("单选对话框");dialog.setSingleChoiceItems(weekdays, 1,new DialogInterface.OnClickListener() {public void onClick(DialogInterface dialog,int which) {index = which;}});dialog.setPositiveButton("是",new DialogInterface.OnClickListener() {public void onClick(DialogInterface dialog, int i) {toast(weekdays[index]);}});dialog.setNegativeButton("否",new DialogInterface.OnClickListener() {public void onClick(DialogInterface dialog, int i) {}});dialog.show();break;case R.id.button3:final ArrayList<String> multiWeekadys = new ArrayList<String>();// 选择的数据放到list中dialog.setIcon(R.drawable.ic_launcher);dialog.setTitle("复选对话框");final boolean[] checkeditems = new boolean[weekdays.length];// 设置一打开时的选择情况dialog.setMultiChoiceItems(weekdays, checkeditems,new DialogInterface.OnMultiChoiceClickListener() {@Overridepublic void onClick(DialogInterface dialog,int which, boolean isChecked) {if (isChecked) {checkeditems[which] = true;// 获取一个被选中的列表}}});dialog.setPositiveButton("是",new DialogInterface.OnClickListener() {public void onClick(DialogInterface dialog, int i) {for (int j = 0; j < checkeditems.length; j++) {// 遍历一遍看那个是选中的if (checkeditems[j]) {multiWeekadys.add(weekdays[j]);}}toast(multiWeekadys.toString());}});dialog.setNegativeButton("否",new DialogInterface.OnClickListener() {public void onClick(DialogInterface dialog, int i) {}});dialog.show();break;case R.id.button4:dialog.setIcon(R.drawable.ic_launcher);dialog.setTitle("简单警告");dialog.setMessage("测试警告");dialog.setPositiveButton("是",new DialogInterface.OnClickListener() {public void onClick(DialogInterface dialog, int i) {toast("是");}});dialog.setNeutralButton("中",new DialogInterface.OnClickListener() {public void onClick(DialogInterface dialog, int i) {toast("中");}});dialog.setNegativeButton("否",new DialogInterface.OnClickListener() {public void onClick(DialogInterface dialog, int i) {}});dialog.show();break;case R.id.button5:final EditText et = new EditText(context);et.setText("测试");dialog.setIcon(R.drawable.ic_launcher);dialog.setTitle("简单警告");dialog.setMessage("测试警告");dialog.setView(et);dialog.setPositiveButton("是",new DialogInterface.OnClickListener() {public void onClick(DialogInterface dialog, int i) {toast(et.getText().toString());}});dialog.setNeutralButton("中",new DialogInterface.OnClickListener() {public void onClick(DialogInterface dialog, int i) {toast("中");}});dialog.setNegativeButton("否",new DialogInterface.OnClickListener() {public void onClick(DialogInterface dialog, int i) {}});dialog.show();break;case R.id.button6:final ImageView im = new ImageView(context);im.setImageResource(R.drawable.ic_launcher);dialog.setIcon(R.drawable.ic_launcher);dialog.setTitle("简单警告");dialog.setMessage("测试警告");dialog.setView(im);dialog.setPositiveButton("是",new DialogInterface.OnClickListener() {public void onClick(DialogInterface dialog, int i) {}});dialog.setNeutralButton("中",new DialogInterface.OnClickListener() {public void onClick(DialogInterface dialog, int i) {toast("中");}});dialog.setNegativeButton("否",new DialogInterface.OnClickListener() {public void onClick(DialogInterface dialog, int i) {}});dialog.show();break;default:break;}}};private void toast(String msg) {Toast.makeText(context, msg, 10).show();}}


更多相关文章

  1. 第一章:初入Android大门(弹出对话框)
  2. Android(安卓)Studio 项目运行错误,弹出“Detected ADB对话框”
  3. Android(安卓)日期选择器、日期范围选择器:MaterialDateRangePick
  4. android 选择图片(从手机照相机或手机图片)
  5. Android中Dialog实现自定义弹出对话框
  6. Android自定义对话框
  7. Android(安卓)- 对话框(Dialog)和通知(Notification)
  8. android 让 webview 支持HTML中的
  9. Android用代码安装APK,不用选择“打包安装程序”

随机推荐

  1. 从一个 2040 的小剧本说未来
  2. 云原生到底是个什么东西?
  3. 中行20年运维老专家 | 踏上时代浪潮,做 AI
  4. 阿里巴巴大数据运维之道
  5. 消息队列的3大使用场景
  6. Zookeeper 的 8 大典型应用场景,你都知道
  7. 遇到应付你的面试官你怎么办?
  8. 华为参与的中国官方首个开源软件协议,木兰
  9. 基于 Ansible 的主机自动化配置管理
  10. 用 Linux 下所有的压缩、解压命令造轮子