提醒对话框:
布局文件:alertdialog.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical"android:layout_width="fill_parent"android:layout_height="150dip"android:padding="10dip"android:background="@color/dialog_bg">    <LinearLayout android:id="@+id/title_layout"        android:orientation="vertical"        android:layout_width="fill_parent"         android:layout_height="wrap_content"        android:layout_alignParentTop="true">    <TextView android:id="@+id/title_text"              android:layout_width="wrap_content"              android:layout_height="fill_parent"              android:layout_gravity="center_horizontal"              android:text="备份提醒"              android:textColor="#FFF"/>    </LinearLayout>    <LinearLayout android:id="@+id/bottom_layout"        android:orientation="horizontal"        android:layout_width="fill_parent"         android:layout_height="wrap_content"        android:layout_alignParentBottom="true">    <Button android:id="@+id/button_yes"             android:layout_width="fill_parent"             android:layout_height="wrap_content"             android:layout_weight="1"             android:text="           是          "             android:gravity="center" />    <Button android:id="@+id/button_no"             android:layout_width="fill_parent"             android:layout_height="wrap_content"             android:layout_weight="1"             android:text="          否          "             android:gravity="center" />    </LinearLayout></RelativeLayout>


自定义类AlertDialog.java
public class AlertDialog extends Dialog implements android.view.View.OnClickListener{OnClickListener onClickListener;Button yes;Button no;public AlertDialog(Context context){super(context);// TODO Auto-generated constructor stub}@Overrideprotected void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);getWindow().findViewById(android.R.id.title).setVisibility(View.GONE);//隐藏对话框的标题//getWindow().requestFeature(Window.FEATURE_NO_TITLE);setContentView(R.layout.alertdialog);yes = (Button)findViewById(R.id.button_yes);no = (Button)findViewById(R.id.button_no);yes.setOnClickListener(this);no.setOnClickListener(this);}@Overrideprotected void onStop(){// TODO Auto-generated method stubsuper.onStop();}@Overridepublic void onClick(View v){switch(v.getId()) {case R.id.button_yes:onClickListener.onClick(onClickListener.BUTTON_YES);break;case R.id.button_no:onClickListener.onClick(onClickListener.BUTTON_NO);break;}}public void setOnClickListener(OnClickListener onClickListener){this.onClickListener = onClickListener;}public interface OnClickListener {public static final int BUTTON_YES = 0;public static final int BUTTON_NO = 1;void onClick(int type);}}


调用代码:
protected Dialog onCreateDialog(int id){switch(id) {case ALERT_DIALOG:AlertDialog dialog = new AlertDialog(ContactsActivity.this);dialog.setOnClickListener(new AlertDialog.OnClickListener(){@Overridepublic void onClick(int type){switch(type) {case AlertDialog.OnClickListener.BUTTON_YES:dismissDialog(ALERT_DIALOG);//showDialog(PROGRESS_DIALOG);backupContacts();break;case AlertDialog.OnClickListener.BUTTON_NO:dismissDialog(ALERT_DIALOG);break;}}});dialog.setCancelable(false);//按back键不关闭对话框return dialog;case PROGRESS_DIALOG:}return super.onCreateDialog(id);}

更多相关文章

  1. android facebook authorize 时禁止调用facebook app
  2. 从android游戏框架看其生命周期!
  3. Android的AlertDialog详解
  4. Android系统调用
  5. Android异步处理二:使用AsyncTask异步更新UI界面
  6. Android窗口机制(三)Window和WindowManager的创建与Activity
  7. Android(安卓)JNI简单实例(android 调用C/C++代码)
  8. Android(安卓)JNI简单实例(android 调用C/C++代码)
  9. Android深入四大组件(一)应用程序启动过程

随机推荐

  1. fanfou(饭否) android客户端 代码学习3
  2. 学习Android(安卓)Opengles 做游戏引擎笔
  3. Google Android 2.0初期版本亮相 支持手
  4. Android之——史上最简单最酷炫的3D图片
  5. Android UI学习总结
  6. xmlns:android="http://schemas.android.
  7. 使用VirtualBox在PC上安装Android OS
  8. Android学习感想一
  9. Android开发学习笔记:Android很有用的代码
  10. 【Qt for Android】第一个安卓程序