1、弹框AlertDialog所需要的dialog.xml如下,其中放了一张picture1:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/rain_station_list"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <ImageView
        android:id="@+id/picture1"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:src="@drawable/alien_cover"/>
</LinearLayout>

2、.class的java主文件中,重写onKeyDown方法,同时重写监听对话框里面的button点击事件。

@Override
    public boolean onKeyDown(int keyCode, KeyEvent event)
    {
        if (keyCode == KeyEvent.KEYCODE_BACK )
        {



            // 创建退出对话框
            AlertDialog isExit = new AlertDialog.Builder(this).create();

            //退出弹出的框框里放入一个view
            View  view=(LinearLayout) getLayoutInflater().inflate(R.layout.dialog,null);
            isExit.setView(view);

            // 设置对话框标题
            isExit.setTitle("系统提示");
            // 设置对话框消息
            isExit.setMessage("确定要退出吗");
            // 添加选择按钮并注册监听
            //【这个方法已经过期】  isExit.setButton("确定", listener);
            isExit.setButton(AlertDialog.BUTTON_POSITIVE, "确定", listener);
            //【这个方法已经过期】  isExit.setButton2("取消", listener);
            isExit.setButton(AlertDialog.BUTTON_NEGATIVE, "取消", listener);
            // 显示对话框
            isExit.show();

        }

        return false;

    }
    /**监听对话框里面的button点击事件*/
    DialogInterface.OnClickListener listener = new DialogInterface.OnClickListener()
    {
        public void onClick(DialogInterface dialog, int which)
        {
            switch (which)
            {
                case AlertDialog.BUTTON_POSITIVE:// "确认"按钮退出程序
                    finish();
                    break;
                case AlertDialog.BUTTON_NEGATIVE:// "取消"第二个按钮取消对话框
                    break;
                default:
                    break;
            }
        }
    };

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐