Android学习笔记----关于各种AlertDialog的总结
2012-03-25 22:32
253 查看
1.AlertDialog
最简单的Dialog,包含title,message,若干个button;
2.带有列表的AlertDialog
----此对话框是以列表的形势展现给大家
3.带有单选列表的AlertDialog
-----实现一个可以单选选择的列表,效果图如下:
4.带有多选列表的AlertDialog
------可以实现多选功能,效果图如下:
最简单的Dialog,包含title,message,若干个button;
package com.test.alertdialog; import android.app.Activity; import android.app.AlertDialog; import android.app.AlertDialog.Builder; import android.content.DialogInterface; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.ImageView; public class TestAlertDialogActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); final Builder builder = new AlertDialog.Builder(this); ImageView img = (ImageView)findViewById(R.id.img); Button bn = (Button)findViewById(R.id.bn); bn.setOnClickListener(new Button.OnClickListener(){ public void onClick(View v) { // TODO Auto-generated method stub builder.setTitle("最简单的Dialog"); builder.setMessage("是否要退出程序?"); builder.setPositiveButton("YES",new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { finish(); } }); builder.setNegativeButton("NO", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub } }); builder.create().show(); }}); } }
2.带有列表的AlertDialog
----此对话框是以列表的形势展现给大家
package com.test.alertdialog; import android.app.Activity; import android.app.AlertDialog; import android.app.AlertDialog.Builder; import android.content.DialogInterface; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.ImageView; public class ListAlertDialog extends Activity{ int[] imageIds = new int[]{R.drawable.a4,R.drawable.a5,R.drawable.a6}; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.list); final Builder builder = new AlertDialog.Builder(this); final ImageView img = (ImageView)findViewById(R.id.img); Button bn = (Button)findViewById(R.id.bn); bn.setOnClickListener(new Button.OnClickListener(){ public void onClick(View v) { builder.setTitle("带有列表的AlertDialog"); builder.setItems(new String[]{"NBA_1","NBA_2","NBA_3"}, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { switch(which) { case 0: img.setImageResource(imageIds[which]); break; case 1: img.setImageResource(imageIds[which]); break; case 2: img.setImageResource(imageIds[which]); break; } } }); builder.create().show(); }}); } }
3.带有单选列表的AlertDialog
-----实现一个可以单选选择的列表,效果图如下:
package com.test.alertdialog; import android.app.Activity; import android.app.AlertDialog; import android.app.AlertDialog.Builder; import android.content.DialogInterface; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.ImageView; public class SingleChoiceAlertDialog extends Activity { int[] imageIds = new int[]{R.drawable.a4,R.drawable.a5,R.drawable.a6}; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.singlechoice); final Builder builder = new AlertDialog.Builder(this); final ImageView img = (ImageView)findViewById(R.id.img); Button bn = (Button)findViewById(R.id.bn); bn.setOnClickListener(new Button.OnClickListener(){ public void onClick(View v) { // TODO Auto-generated method stub builder.setTitle("带有单选列表的AlertDialog"); builder.setSingleChoiceItems(new String[]{"NBA_1","NBA_2","NBA_3"}, 1,new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub switch(which){ case 0: img.setImageResource(imageIds[which]); break; case 1: img.setImageResource(imageIds[which]); break; case 2: img.setImageResource(imageIds[which]); break; } } }); builder.setPositiveButton("OK", null); builder.create().show(); }}); } }
4.带有多选列表的AlertDialog
------可以实现多选功能,效果图如下:
package com.test.alertdialog; import android.app.Activity; import android.app.AlertDialog; import android.app.AlertDialog.Builder; import android.content.DialogInterface; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; public class MutiChoiceAlertDialog extends Activity{ final boolean[] checkStatus = new boolean[]{true,false,true}; final String[] players = new String[]{"Kobe","James","Wade"}; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.mutichoice); final Builder builder = new AlertDialog.Builder(this); Button bn = (Button)findViewById(R.id.bn); bn.setOnClickListener(new Button.OnClickListener(){ public void onClick(View v) { // TODO Auto-generated method stub builder.setTitle("带有多选列表的AlertDialog"); builder.setMultiChoiceItems(players, checkStatus, new DialogInterface.OnMultiChoiceClickListener() { public void onClick(DialogInterface dialog, int which, boolean isChecked) { // TODO Auto-generated method stub EditText et = (EditText)findViewById(R.id.et); String ss = "你选择的球员是:"; for(int i = 0;i < checkStatus.length;i++) { if(checkStatus[i]) { ss += players[i]+","; } } et.setText(ss); } }); builder.setPositiveButton("OK", null); builder.create().show(); }}); } }
相关文章推荐
- 各种dialog,alertdialog,AlertDialog.Builder(this)的总结,并封住成javaScript调用
- 各种dialog,alertdialog,AlertDialog.Builder(this)的总结,并封住成javaScript调用
- 关于PHP的i18n(国际化)的一点总结(2)----各种方法
- 关于华为各种型号交换机端口镜像配置方法总结
- Android学习笔记二十八之AlertDialog提示对话框和几个常用的提示框
- 关于各种输入输出流的二次理解总结 ,以及输入的三种方法总结。
- 关于各种输入输出流的二次理解总结 ,以及输入的三种方法总结。
- Android学习笔记(6)—关于Dialog的简单体验
- 【android学习笔记】关于相对布局RelativeLayout的各种属性介绍
- 关于带有EditText的自定义AlertDialog,不能弹出软件盘的解决方法
- 关于各种输入输出流的二次理解总结 ,以及输入的三种方法总结。
- 关于各种输入输出流的二次理解总结 ,以及输入的三种方法总结。
- 【VS开发】关于各种View的实现总结
- [收藏]Javascript关于日期的各种技巧和方法总结[欢迎补充]
- 关于控件Controls随Dialog改变大小 && CDialogResize的总结
- 【android学习笔记】关于相对布局RelativeLayout的各种属性介绍
- 关于iOS中的各种颜色设置总结大全(推荐)
- 关于MFC中CDHtmlDialog嵌入flash和调用JS一些技术总结
- AlertDialogTest各种类型对话框
- 关于各种编码问题,汉字处理的一点小总结