Android之创建对话框

来源:互联网 发布:smart电子白板软件 编辑:程序博客网 时间:2024/06/05 00:21

         Android中的对话框表面上看是一个Activity,所以我们可以用XML创建布局,但是对于简单的二次确认、关于等对操作要求比较少的Activity我们没有必要都去创建XML布局,因为Android给我们提供了相应的方法来做这些简单的事情

       下面是关于创建对话框的代码

     

<span style="font-size:18px;"><strong> public class MenuActivity extends Activity{     @override     protected void OnCreate(Bundle SavedInstanceState){//重写OnCreate()方法</strong></span>
<span style="font-size:18px;"><strong>              super.OnCreate(SavedInstanceState);</strong></span>
<span style="font-size:18px;"><strong>              setContentView(R.layout.activity_menu);//加载主方法布局</strong></span>
<span style="font-size:18px;"><strong>              </strong></span>
<span style="font-size:18px;"><strong>              about();//调用关于方法</strong></span>
<span style="font-size:18px;"><strong>              exit();//退出二次确认方法</strong></span>
<span style="font-size:18px;"><strong>}</strong></span>
<span style="font-size:18px;">    <strong>  public void about(){</strong></span>
<span style="font-size:18px;"><strong>       Button  btnAbout=(Button)findViewById(R.id.btn_about);</strong></span>

<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">             btnAbout.setOnClickListener(new OnClickListener(){</span></span>

<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">        @override</span></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">        public void onClick(){</span></span>

<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">     //创建对话框对象</span></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;"></span></span><pre name="code" class="java"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">    //注意因为AlertDialog类被API隐藏了,所以要用他的内部类来创建对象</span></span>

<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">AlertDialog.Builder   builder=new AlertDialog.Builder(MenuActivity.this);</span></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">    //添加对话框图标</span></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;"></span></span><pre name="code" class="java"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">   //对话框标题</span></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">   //对话框内容</span></span>

<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">builder.setIcon(R.drawable.ic_launcher).setTitel("关于").setMassager("版权所以,欢迎试玩")</span></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">   </span></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">   //对话框按钮    这里对于参数是按钮的名称,第二个参数是一个点击事件如果没有点击事件,可以写成null;</span></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">builder.setNegativeButton("返回",null);   </span></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">    //设置显示对话框</span></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">builder.show();//如果不调用show()方法,创建的对话框将不能显示</span></span>
<span style="font-family:Arial, Helvetica, sans-serif;font-size:18px;color:#ff6666;">/*注意这里的show()是Bulider类的show,其实他是本质是AlertDialog的show(),只是在内部类Buikder中包装了一下</span>
<span style="font-family:Arial, Helvetica, sans-serif;font-size:18px;color:#ff6666;">    public AlertDialog show(){</span>
<span style="font-family:Arial, Helvetica, sans-serif;font-size:18px;color:#ff6666;">     AlertDialog dialog=creat();</span>
<span style="font-family:Arial, Helvetica, sans-serif;font-size:18px;color:#ff6666;">     dialog.show;</span>
<span style="font-family:Arial, Helvetica, sans-serif;font-size:18px;color:#ff6666;">     return diallog</span>
<span style="font-family:Arial, Helvetica, sans-serif;font-size:18px;color:#ff6666;">}</span>
<span style="font-family:Arial, Helvetica, sans-serif;font-size:18px;color:#ff6666;">*/</span>

<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">        }</span></span>

<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;">});</span></span>

<span style="font-size:18px;">      }</span>

<span style="font-size:18px;"><strong>public void exit(){</strong></span>
<span style="font-size:18px;"><strong>    Button btnExit=(Button)findViewById(R.id.btn_exit);</strong></span>

<span style="font-size:18px;"><strong>btnExit.setOnClickListener(new OnClickListener(){</strong></span>

<span style="font-size:18px;"><strong> @Override</strong></span>
<span style="font-size:18px;"><strong>public void onClick(View v){</strong></span>

<span style="font-size:18px;"><strong>AlertDialog.Builder builder=new AlertDialog.Builder(MenuActivity.this);</strong></span>
<span style="font-size:18px;"><strong>//创建标题图像//创建标题//创建内容</strong></span>
<span style="font-size:18px;"><strong>builder.setIcon(R.drawable.ic_lanucher).setTitel("退出").setMassager("是否要退出游戏")</strong></span>
<span style="font-size:18px;"><strong>//创建返回按钮</strong></span>
<span style="font-size:18px;"><strong>builder.setNegativeButton("返回",null);</strong></span>
<span style="font-size:18px;"><strong></strong></span>
<span style="font-size:18px;color:#ff6666;"><strong>//创建退出按钮//注意AlertDialog最多可以创建3个按钮,这是第二个,创建三个按钮的方法是setNeutralButton</strong></span>
<span style="font-size:18px;"><strong>builder.setPositiveButton("退出",new AlertDialog.OnClickListener(){</strong></span>

<span style="font-size:18px;"><strong>  @Override</strong></span>
<span style="font-size:18px;"><strong>public void onClick(){</strong></span>
<span style="font-size:18px;"><strong></strong></span>
<span style="font-size:18px;"><strong>    finish();</strong></span>
<span style="font-size:18px;"><strong>}   </strong></span>

<span style="font-size:18px;"><strong>});</strong></span>
<span style="font-size:18px;"><strong></strong></span>
<span style="font-size:18px;"><strong>builder.show();   </strong></span>

<span style="font-size:18px;"><strong>}   </strong></span>

<span style="font-size:18px;"><strong>});</strong></span>

<span style="font-size:18px;"><strong>}</strong></span>

<span style="font-size:18px;">}</span>

0 0
原创粉丝点击