<track id="vvvvv"><del id="vvvvv"></del></track><p id="vvvvv"></p><pre id="vvvvv"></pre>
<pre id="vvvvv"></pre>
<pre id="vvvvv"><strike id="vvvvv"><ol id="vvvvv"></ol></strike></pre>
        <ruby id="vvvvv"></ruby>
          <p id="vvvvv"><ruby id="vvvvv"></ruby></p>
              <noframes id="vvvvv"><pre id="vvvvv"></pre>
              <p id="vvvvv"><pre id="vvvvv"></pre></p>
              <pre id="vvvvv"></pre><track id="vvvvv"><strike id="vvvvv"><ol id="vvvvv"></ol></strike></track>

                <p id="vvvvv"></p>
                  <pre id="vvvvv"></pre>

                  <pre id="vvvvv"><del id="vvvvv"></del></pre>
                  <pre id="vvvvv"><pre id="vvvvv"><b id="vvvvv"></b></pre></pre>
                      <pre id="vvvvv"><pre id="vvvvv"><mark id="vvvvv"></mark></pre></pre>
                      <noframes id="vvvvv"><ruby id="vvvvv"></ruby>

                      <pre id="vvvvv"></pre><pre id="vvvvv"></pre>

                      <pre id="vvvvv"></pre>
                      <noframes id="vvvvv">
                      <pre id="vvvvv"><ruby id="vvvvv"></ruby></pre>

                        <pre id="vvvvv"><ruby id="vvvvv"></ruby></pre>
                          <pre id="vvvvv"></pre>

                            <pre id="vvvvv"><strike id="vvvvv"></strike></pre>
                            <p id="vvvvv"></p>
                            <pre id="vvvvv"></pre>

                            <pre id="vvvvv"><ruby id="vvvvv"></ruby></pre>
                            <pre id="vvvvv"><b id="vvvvv"><b id="vvvvv"></b></b></pre><pre id="vvvvv"><strike id="vvvvv"><var id="vvvvv"></var></strike></pre>

                            <p id="vvvvv"></p>
                            <pre id="vvvvv"><ruby id="vvvvv"></ruby></pre>

                                    <noframes id="vvvvv"><pre id="vvvvv"></pre>
                                    <pre id="vvvvv"><ruby id="vvvvv"></ruby></pre>

                                    <pre id="vvvvv"></pre>

                                      <pre id="vvvvv"><strike id="vvvvv"><b id="vvvvv"></b></strike></pre><pre id="vvvvv"><ruby id="vvvvv"><b id="vvvvv"></b></ruby></pre>

                                      <pre id="vvvvv"></pre><track id="vvvvv"><ruby id="vvvvv"><ol id="vvvvv"></ol></ruby></track>
                                      <pre id="vvvvv"><ruby id="vvvvv"><b id="vvvvv"></b></ruby></pre>

                                        <p id="vvvvv"></p>

                                            <p id="vvvvv"></p>

                                            <noframes id="vvvvv"><ruby id="vvvvv"><ruby id="vvvvv"></ruby></ruby>
                                                <track id="vvvvv"><strike id="vvvvv"></strike></track>

                                                <pre id="vvvvv"><ruby id="vvvvv"><b id="vvvvv"></b></ruby></pre>

                                                  <pre id="vvvvv"></pre>
                                                    <track id="vvvvv"><ruby id="vvvvv"><b id="vvvvv"></b></ruby></track>

                                                      <pre id="vvvvv"></pre>
                                                      <p id="vvvvv"></p>

                                                      Android软件开发之盘点所有Dialog对话框大合集
                                                      • 发表于2020-01-03 15:11
                                                      • |
                                                      • 454次阅读
                                                      • |
                                                      • 来源 豪创

                                                      对话框大合集
                                                      今天我用自己写的一个Demo 和大家详细介绍一个Android中的对话框的使用技巧。

                                                       
                                                       

                                                       

                                                      1.确定取消对话框

                                                      对话框中有2个按钮   通过调用 setPositiveButton 方法 和 setNegativeButton 方法 可以设置按钮的显示内容以及按钮的监听事件。

                                                        


                                                      我们使用AlerDialog 创建对话框

                                                      1. AlertDialog.Builder builder = new AlertDialog.Builder(MainDialog.this);       

                                                      复制代码

                                                      使用builder设置对话框的title button icon 等等

                                                      1.             builder.setIcon(R.drawable.icon);

                                                      2.             builder.setTitle("你确定要离开吗?");

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

                                                      4.                 public void onClick(DialogInterface dialog, int whichButton) {

                                                      5.                     //这里添加点击确定后的逻辑

                                                      6.                     showDialog("你选择了确定");

                                                      7.                 }

                                                      8.             });

                                                      9.             builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {

                                                      10.                 public void onClick(DialogInterface dialog, int whichButton) {

                                                      11.                     //这里添加点击确定后的逻辑

                                                      12.                     showDialog("你选择了取消");

                                                      13.                 }

                                                      14.             });

                                                      15.             builder.create().show();

                                                      16.  

                                                      复制代码

                                                      这个dialog用于现实onClick后监听的内容信息

                                                      1.     private void showDialog(String str) {

                                                      2.          new AlertDialog.Builder(MainDialog.this)

                                                      3.          .setMessage(str)

                                                      4.          .show();

                                                      5.     }

                                                      复制代码

                                                      2.多个按钮信息框

                                                        

                                                       
                                                       

                                                      1.           

                                                      2. AlertDialog.Builder builder = new AlertDialog.Builder(MainDialog.this);                    

                                                      3. builder.setIcon(R.drawable.icon);

                                                      4. builder.setTitle("投票");

                                                      5. builder.setMessage("您认为什么样的内容能吸引您?");

                                                      6. builder.setPositiveButton("有趣味的", new DialogInterface.OnClickListener() {

                                                      7. public void onClick(DialogInterface dialog, int whichButton) {

                                                      8.                     showDialog("你选择了有趣味的");

                                                      9.                 }

                                                      10.             });

                                                      11. builder.setNeutralButton("有思想的", new DialogInterface.OnClickListener() {

                                                      12.                 public void onClick(DialogInterface dialog, int whichButton) {

                                                      13.                     showDialog("你选择了有思想的");                    

                                                      14.                 }

                                                      15.             });

                                                      16. builder.setNegativeButton("主题强的", new DialogInterface.OnClickListener() {

                                                      17.                 public void onClick(DialogInterface dialog, int whichButton) {

                                                      18.                     showDialog("你选择了主题强的");  

                                                      19.                 }

                                                      20.             });

                                                      21.  builder.create().show();

                                                      22.  

                                                      3.列表框

                                                        

                                                      这个数组用于列表选择

                                                      1. final String[] mItems = {"item0","item1","itme2","item3","itme4","item5","item6"};

                                                      1. AlertDialog.Builder builder = new AlertDialog.Builder(MainDialog.this);       

                                                      2. builder.setTitle("列表选择框");

                                                      3. builder.setItems(mItems, new DialogInterface.OnClickListener() {

                                                      4. public void onClick(DialogInterface dialog, int which) {

                                                      5.                     //点击后弹出窗口选择了第几项

                                                      6.                     showDialog("你选择的id为" + which + " , " + mItems[which]);

                                                      7.                 }

                                                      8.             });

                                                      9. builder.create().show();

                                                      10.  

                                                      4.单项选择列表框

                                                        

                                                       
                                                       


                                                      mSingleChoice 用于记录单选中的ID

                                                      1. int mSingleChoiceID = -1;

                                                      1. AlertDialog.Builder builder = new AlertDialog.Builder(MainDialog.this);       

                                                      2. mSingleChoiceID = -1;

                                                      3. builder.setIcon(R.drawable.icon);

                                                      4. builder.setTitle("单项选择");

                                                      5. builder.setSingleChoiceItems(mItems, 0, new DialogInterface.OnClickListener() {

                                                      6. public void onClick(DialogInterface dialog, int whichButton) {

                                                      7.                  mSingleChoiceID = whichButton;

                                                      8.                  showDialog("你选择的id为" + whichButton + " , " + mItems[whichButton]);

                                                      9.                  }

                                                      10.              });

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

                                                      12.       public void onClick(DialogInterface dialog, int whichButton) {

                                                      13.                      if(mSingleChoiceID > 0) {

                                                      14.                      showDialog("你选择的是" + mSingleChoiceID);

                                                      15.                      }

                                                      16.                  }

                                                      17.              });

                                                      18. builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {

                                                      19.                  public void onClick(DialogInterface dialog, int whichButton) {

                                                      20.  

                                                      21.                  }

                                                      22.              });

                                                      23.  builder.create().show();

                                                      24.  

                                                      5.进度条框

                                                        


                                                      点击进度条框按钮后 开启一个线程计算读取的进度 假设读取结束为 100
                                                      Progress在小于100的时候一直在线程中做循环++ 只到读取结束后,停止线程。

                                                      1.  mProgressDialog = new ProgressDialog(MainDialog.this);

                                                      2. mProgressDialog.setIcon(R.drawable.icon);

                                                      3. mProgressDialog.setTitle("进度条窗口");

                                                      4. mProgressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);

                                                      5. mProgressDialog.setMax(MAX_PROGRESS);

                                                      6.  mProgressDialog.setButton("确定", new DialogInterface.OnClickListener() {

                                                      7.                         public void onClick(DialogInterface dialog, int whichButton) {

                                                      8.                             //这里添加点击后的逻辑

                                                      9.                         }

                                                      10.                     });

                                                      11. mProgressDialog.setButton2("取消", new DialogInterface.OnClickListener() {

                                                      12.           public void onClick(DialogInterface dialog, int whichButton) {

                                                      13.                             //这里添加点击后的逻辑

                                                      14.                         }

                                                      15.                     });

                                                      16.                     mProgressDialog.show();

                                                      17.                     new Thread(this).start();

                                                      18.  

                                                      19. public void run() {

                                                      20.         int Progress = 0;

                                                      21.         while(Progress < MAX_PROGRESS) {

                                                      22.         try {

                                                      23.             Thread.sleep(100);

                                                      24.             Progress++;  

                                                      25.             mProgressDialog.incrementProgressBy(1);

                                                      26.         } catch (InterruptedException e) {

                                                      27.             // TODO Auto-generated catch block

                                                      28.             e.printStackTrace();

                                                      29.         }

                                                      30.          

                                                      31.         }

                                                      32.    

                                                      33.     }

                                                      6.多项选择列表框

                                                       
                                                       

                                                       
                                                       


                                                      MultiChoiceID 用于记录多选选中的id号 存在ArrayList中
                                                      选中后 add 进ArrayList
                                                      取消选中后 remove 出ArrayList。

                                                      1. ArrayList

                                                        MultiChoiceID = new ArrayList();

                                                         

                                                      2. AlertDialog.Builder builder = new AlertDialog.Builder(MainDialog.this);      MultiChoiceID.clear();

                                                      3. builder.setIcon(R.drawable.icon);

                                                      4.  builder.setTitle("多项选择");

                                                      1. builder.setMultiChoiceItems(mItems,

                                                      2. new boolean[]{false, false, false, false, false, false, false},

                                                      3. new DialogInterface.OnMultiChoiceClickListener() {

                                                      4. public void onClick(DialogInterface dialog, int whichButton,

                                                      5.   boolean isChecked) {

                                                      6.                            if(isChecked) {

                                                      7.                                MultiChoiceID.add(whichButton);

                                                      8.                                showDialog("你选择的id为" + whichButton + " , " + mItems[whichButton]);

                                                      9.                            }else {

                                                      10.                                MultiChoiceID.remove(whichButton);

                                                      11.                            }

                                                      12.                            

                                                      13.                         }

                                                      14.                     });

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

                                                      16.           public void onClick(DialogInterface dialog, int whichButton) {

                                                      17.                     String str = "";

                                                      18.                     int size = MultiChoiceID.size();

                                                      19.                     for (int i = 0 ;i < size; i++) {

                                                      20.                     str+= mItems[MultiChoiceID.get(i)] + ", ";

                                                      21.                     }

                                                      22.                     showDialog("你选择的是" + str);

                                                      23.                 }

                                                      24.             });

                                                      25.             builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {

                                                      26.                 public void onClick(DialogInterface dialog, int whichButton) {

                                                      27.  

                                                      28.                 }

                                                      29.             });

                                                      30.   builder.create().show();

                                                      7.自定义布局

                                                        


                                                      讲到自定义布局我就得多说一说了,为什么要多说一说呢?

                                                      其实自定义布局在Android的开发中非常重要 因为它能让开发者做出自己五彩缤纷的Activity 而不用去使用系统枯燥的界面。


                                                      本篇文章部分内容及图片均来源于网络,如侵犯到您的权益,请及时通知我们。

                                                      454
                                                      热门教程
                                                      青苹果影院4480福利版iOS最新下载-青苹果影院首播影院高清