zoukankan      html  css  js  c++  java
  • 2020/2/2学习总结

    今天我学习了完成后提示对话框的实现方法:

    1.引用AlertDialog类包实例化对话框

    2.设置对话框文本信息,标题

    3.设置对话框完成按钮单击事件:对话框消失,修改对话框状态,关闭当前页面

    4.设置对话框再来一次按钮事件:对话框消失,修改对话框状态,调用之前的方法,创建并显示对话框。

    protected void dialog(){
            typedialog=false;
            //实例化对话框
                AlertDialog.Builder builder=new AlertDialog.Builder(OneActivity.this);
             //设置对话框文本信息
             builder.setMessage("太棒了,书写完成");
             builder.setTitle("提示");
             builder.setPositiveButton("完成",new DialogInterface.OnClickListener(){
                 public void onClick(DialogInterface dialog,int which){
                     dialog.dismiss();;
                     typedialog=true;
                     finish();
                 }
                });
             builder.setNegativeButton("再来一次",new DialogInterface.OnClickListener(){
                 public void onClick(DialogInterface dialog,int which){
                     dialog.dismiss();
                     typedialog=true;
                     i=1;
                     lodimagep(i);
                 }
             });
             builder.create().show();
            }

     onClick的参数中有一个which,这个which实际上代表的是一个唯一的int型数值。像上面的setPositiveButton中的which代表的是-1,setNegativeButton中的which代表的是-3,setNeutralButton中的which代表的是-2.

    设置列表对话框

     private void dialog2() {  
                final String items[]={"张三","李四","王五"};  
                //dialog参数设置  
                AlertDialog.Builder builder=new AlertDialog.Builder(this);  //先得到构造器  
                builder.setTitle("提示"); //设置标题  
                //builder.setMessage("是否确认退出?"); //设置内容  
                builder.setIcon(R.mipmap.ic_launcher);//设置图标,图片id即可  
                //设置列表显示,注意设置了列表显示就不要设置builder.setMessage()了,否则列表不起作用。  
                builder.setItems(items,new DialogInterface.OnClickListener() {  
                    @Override  
                    public void onClick(DialogInterface dialog, int which) {  
                        dialog.dismiss();  
                        Toast.makeText(MainActivity.this, items[which], Toast.LENGTH_SHORT).show();  
          
                    }  
                });  
                builder.setPositiveButton("确定",new DialogInterface.OnClickListener() {  
                    @Override  
                    public void onClick(DialogInterface dialog, int which) {  
                        dialog.dismiss();  
                        Toast.makeText(MainActivity.this, "确定", Toast.LENGTH_SHORT).show();  
                    }  
                });  
                builder.create().show();  
            }  

    这里的setItems中的Onclick中的which属性是items数组的下标!

     设置单选按钮对话框

    private void dialog3(){  
            final String items[]={"男","女"};  
            AlertDialog.Builder builder=new AlertDialog.Builder(this);  //先得到构造器  
            builder.setTitle("提示"); //设置标题  
            builder.setIcon(R.mipmap.ic_launcher);//设置图标,图片id即可  
            builder.setSingleChoiceItems(items,0,new DialogInterface.OnClickListener() {  
                @Override  
                public void onClick(DialogInterface dialog, int which) {  
                    //dialog.dismiss();  
                    Toast.makeText(MainActivity.this, items[which], Toast.LENGTH_SHORT).show();  
                }  
            });  
            builder.setPositiveButton("确定",new DialogInterface.OnClickListener() {  
                @Override  
                public void onClick(DialogInterface dialog, int which) {  
                    dialog.dismiss();  
                    Toast.makeText(MainActivity.this, "确定", Toast.LENGTH_SHORT).show();  
                }  
            });  
            builder.create().show();  
        } 

    设置多选按钮对话框

    private void dialog4(){  
            final String items[]={"篮球","足球","排球"};  
            final boolean selected[]={true,false,true};  
            AlertDialog.Builder builder=new AlertDialog.Builder(this);  //先得到构造器  
            builder.setTitle("提示"); //设置标题  
            builder.setIcon(R.mipmap.ic_launcher);//设置图标,图片id即可  
            builder.setMultiChoiceItems(items,selected,new DialogInterface.OnMultiChoiceClickListener() {  
                @Override  
                public void onClick(DialogInterface dialog, int which, boolean isChecked) {  
                   // dialog.dismiss();  
                    Toast.makeText(MainActivity.this, items[which]+isChecked, Toast.LENGTH_SHORT).show();  
                }  
            });  
            builder.setPositiveButton("确定",new DialogInterface.OnClickListener() {  
                @Override  
                public void onClick(DialogInterface dialog, int which) {  
                    dialog.dismiss();  
                    Toast.makeText(MainActivity.this, "确定", Toast.LENGTH_SHORT).show();  
                    //android会自动根据你选择的改变selected数组的值。  
                    for (int i=0;i<selected.length;i++){  
                        Log.e("hongliang",""+selected[i]);  
                    }  
                }  
            });  
            builder.create().show();  
        } 
  • 相关阅读:
    【转】Intellij IDEA常用配置详解
    scala(一)
    scala(三)
    Scrapy学习篇(六)之Selector选择器
    Scrapy学习篇(五)之Spiders
    Scrapy学习篇(四)之数据存储
    Scrapy学习篇(三)之创建项目
    Scrapy学习篇(二)之常用命令行工具
    Scrapy学习篇(一)之框架
    git实现github仓库和本地仓库同步
  • 原文地址:https://www.cnblogs.com/wangzhaojun1670/p/12254676.html
Copyright © 2011-2022 走看看