Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2531039
  • 博文数量: 245
  • 博客积分: 4125
  • 博客等级: 上校
  • 技术积分: 3113
  • 用 户 组: 普通用户
  • 注册时间: 2009-03-25 23:56
文章分类

全部博文(245)

文章存档

2015年(2)

2014年(26)

2013年(41)

2012年(40)

2011年(134)

2010年(2)

分类: Android平台

2013-03-27 13:59:31

点击按钮,弹出对话框,点击确定关闭当前画面(Activity)
布局文件 dialog_demo.xml

点击(此处)折叠或打开

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android=""
  3.     android:layout_width="match_parent"
  4.     android:layout_height="match_parent"
  5.     android:orientation="vertical" >
  6.     <Button android:id="@+id/openDialogBtn"
  7.         android:layout_width="wrap_content"
  8.         android:layout_height="wrap_content"
  9.         android:onClick="onClick"
  10.         android:text="打开Dialog"></Button>

  11. </LinearLayout>

AlertActivity 类文件:

点击(此处)折叠或打开

  1. package com.example.twiter;

  2. import android.app.Activity;
  3. import android.app.AlertDialog;
  4. import android.app.AlertDialog.Builder;
  5. import android.app.Dialog;
  6. import android.content.DialogInterface;
  7. import android.os.Bundle;
  8. import android.view.View;
  9. import android.widget.Toast;

  10. public class AlertActivity extends Activity {

  11.     private static final int DIALOG_ALERT = 10;
  12.     
  13.     public void onCreate(Bundle savedInstanceState){
  14.         super.onCreate(savedInstanceState);
  15.         setContentView(R.layout.dialog_demo);
  16.     }
  17.     
  18.     public void onClick(View view){
  19.         showDialog(DIALOG_ALERT);
  20.     }

  21.     @Override
  22.     protected Dialog onCreateDialog(int id) {
  23.         switch(id){
  24.         case DIALOG_ALERT:
  25.             Builder builder = new AlertDialog.Builder(this);
  26.             builder.setMessage("干掉Activity");
  27.             builder.setCancelable(true);
  28.             builder.setPositiveButton("YES", new OkOnClickListener() );
  29.             builder.setNegativeButton("Cancel", new CancelOnClickListener() );
  30.             AlertDialog dialog = builder.create();
  31.             dialog.show();
  32.             break;
  33.         }
  34.         return super.onCreateDialog(id);
  35.     }
  36.     
  37.     private final class OkOnClickListener implements DialogInterface.OnClickListener{

  38.         @Override
  39.         public void onClick(DialogInterface dialog, int which) {
  40.             AlertActivity.this.finish();//干掉Activity
  41.         }
  42.         
  43.     }
  44.     
  45.     private final class CancelOnClickListener implements DialogInterface.OnClickListener{

  46.         @Override
  47.         public void onClick(DialogInterface dialog, int which) {
  48.             Toast.makeText(getApplicationContext(), "Activity will continue..", Toast.LENGTH_SHORT).show();
  49.         }
  50.         
  51.     }
  52. }

AndroidManifest.xml中添加以下行:

点击(此处)折叠或打开

  1. <activity android:name="com.example.twiter.AlertActivity">
  2.               <intent-filter>
  3.                 <action android:name="android.intent.action.MAIN" />
  4.                 <category android:name="android.intent.category.LAUNCHER" />
  5.             </intent-filter>
  6.          </activity>
效果:


点击(此处)折叠或打开

  1. <activity android:name="com.example.twiter.AlertActivity">
  2.               <intent-filter>
  3.                 <action android:name="android.intent.action.MAIN" />
  4.                 <category android:name="android.intent.category.LAUNCHER" />
  5.             </intent-filter>
  6.          </activity>





阅读(1599) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~