您的位置:首页 > 移动开发 > Android开发

android有时候需要show对话框,但是对话框需要依附于activity,如果没有activity怎么办

2015-10-28 11:50 507 查看
     两种方案:

1、弹出activity类型的对话框:

2、如果嫌第一种麻烦,那就getwindow(),让你的对话框显示在你取的window上;

第一种已经写过了

第二种:

先在manifest理添加权限

    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>

    <uses-permission android:name="android.permission.SYSTEM_OVERLAY_WINDOW" /> 

        int themeID = getResources().getIdentifier("androidhwext:style/Theme.Emui.Dialog.Alert",null,null); //适配主题

        AlertDialog.Builder builder = new  AlertDialog.Builder(this,themeID);

        builder.setTitle(R.string.wifi_is_disconnect);
               

        builder.setPositiveButton(R.string.open_confirm,new OpenDataConnectOKListener());

        builder.setNegativeButton(R.string.cancle_confirm, new CloseDataConnectOKListener());

        mAlertDialog = builder.create();

        final  View  layout = mAlertDialog.getLayoutInflater().inflate(R.layout.define_view_dialog,null);

        mCheckbox = (CheckBox) layout.findViewById(R.id.closeReminder);

        mAlertDialog.setView(layout);

        mAlertDialog.setCanceledOnTouchOutside(false);//屏蔽返回键

        //mAlertDialog.setCancelable(false);

        mAlertDialog.getWindow().setType(

                WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);//获取window显示对话框
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  alertdialog