android中的 AlertDialog的个人见解
2014-12-30 15:05
127 查看
工作一年有余,自认能力还是不够,所以准备整理一下笔记,与君共勉!
这是我看API文档后的第一次笔记,或许写的不够完善,或许写的不够正确,望各位提出指导和批评,谢谢!
本文主要说明简单受用的提示对话框---Dialog.[code] android API Android API 支持以下类型的对话框:AlertDialog,ProgressDialog,DatePickerDialog,TimePickerDialog.和自定义的对话框。1,AlertDialogAlertDialog一般是两个按钮positive和native,最多不超过三个即positive、native和neutral。现列举几个经常用到的AlertDialog.(1),最普通的提示对话框,但是有三个按钮。AlterDialog.Builder builder = new AlterDialog.Builder(this);builder.setMessage(“你喜欢我吗?”).setCanclable(false) //不能按back键取消.setPositiveButton(“喜欢”,new DialogInterface.OnClickListener(){Pubilc void onClick(DialogInterface dilog, int id){ManiActivity.this.finish();}}).setNativeButton(“不喜欢”,new DialogInterface.OnClickListener(){Public void onClick(DialogInterface dialog,int id){Dialog.cancel();}}).setNeutralButton(“不知道”,new DialogInerface.OnClickListenre(){Pubilc void onClick(DialogBuilder dialog,int id){}})(2),要创建一个具有可选择性的AlertDialog,使用setItems()方法。Final CharSequence[] items = {“red”,”blue”,”black”};AlertDialog.Builder builder = new AlertDialog.Builder(this);builder.setTitle(“pick a color”);builder.setItems(items,new DialogInterface.OnClickListener(){Public void onClick(DialogInterface dialog, int item){Toast.makeText(getApplicationContext(),items[item],Toast.LENGTH_SHORT ).show();}})AlertDialog alert = builder.create();首先定义一个名称,再调用setItems()增加一个可选列表,该列表接受一个选项的名称和DialogInterface.OnClickListener,后者定义了选项的回应。(3),类似radio buttons 的AlertDialog。实例如下:Final CharSequence[] items = {“red”,”blue”,”white”};AlertDialog.Builder builder = new AlertDialog.Builder(this);builder.setTitle(“pick a color”).setSingleChoiceItems(items,0,new DialogInterface.OnClickListener(){Public void onClick(DialogInterface dialog,int item){selectedColor = item;}}).setPosetiveButton(“确认”,new DialogInterface.OnClickListener(){Public void onClick(DialogInterface dialog,int item){Toast.makeText(this,items[item],Toast.LENGTH_SHORT).show();}}).setNativeButton(“取消”, new DialogInterface.OnClickListener(){Public void onClick(DialogInterface dialog,int item){}});AlertDialog alert = builder.create();重点:setSingleChoiceItems(CharSquence[],int,new DialogInterface.OnClickListener())第一个参数是要显示的数据的数组,第二个参数是初始值(初始被选中的item),第三个参数是点击某个item的触发事件(4),类似checkboxs的AlertDialog.实例入下:Final String[] fruits= new String[] {“apple”,”juice”.”banana”};Final boolean[] selectedFruits = new boolean[]{ture,false,false};AlertDialog.Builder builder = new AlertDialog.Builder(this);builder.setTitle(“which fruit do you like?”);.setMultiChoiceItems(fruits,selectedFruits,new DialogInterface.OnMultiChoiceClickListener(){Pubilc void onClick(DialogInterface dialog,int item,boolean isChecked){selectedFruits[item] = isChecked;}}).setPosetiveButton(“确认”,new DialogInterface.OnClickListener(){Public void onClick(DialogInterface dialog,int which){StringBuilder sb = new StringBuilder();For(int i = 0; i<selectedFruits.length;i++){If(selectedFruits[i]=true){Sb.append(fruits[i]+”、”);}}Toast.makeText(this,sb.toString(), Toast.LENGTH_SHORT);}}).setNative(“取消”,new DialogInterface.OnClickListener(){Public void onClick(DialogInterface dialog, int which){}})AlertDialog alert = builder.create();注意:用setMultiChoiceItems(CharSequence[] items, boolean[] checkedItems, final OnMultiChoiceClickListener listener)方法来实现类似CheckBox的AlertDialog第一个参数是要显示的数据的数组,第二个参数是选中状态的数组,第三个参数是点击某个item的触发事件。(5),自定义提示框,在View Dialog 中 用以下方法加载view布局。setContentView(R.layout.main);LayoutInflater layoutInflater = LayoutInflater.from(this);View myView = layoutInflate(R.layout.login,null);AlertDialog.Builder builder = new AlertDialog.Builder(this);builder.setTitle(“苗薇薇”).setView(myView).setPosetiveButton();
相关文章推荐
- Android和iOS系统个人之见解
- Android之对TabActivity的见解,个人觉得不错
- 关于android自定义相机连续对焦功能的个人见解
- Android开发之原生APP和Web APP的区别个人见解
- 关于Android中http请求Gosn解析的一些个人见解: 首先是XML中构建布局: 在布局里面建一个listview用来展示Gson解析的字符
- 个人对于学习android开发的一点见解
- Android 内存泄露的一点个人小见解
- Android Retrofit框架的使用和个人见解
- Android Animation(帧动画)原理个人见解
- Android对ViewGroup中OnMeasure方法的一些个人见解
- android button 的clickable 和 enable属性的个人见解
- Android Handler个人见解
- Android 接口回调个人见解
- 关于android 开发屏幕适配的个人见解
- android对话框的使用之个人见解
- Android和iOS系统个人之见解
- 2013.03.19——— android 音视频编解码个人见解
- 《论Android的发展方向(个人见解)》
- Android LauncherMode个人见解
- Java学习方法的一点个人见解