1

私の情報源

private static final int ALERT_DIALOG = 1;

    @Override
    public void onBackPressed() {
        // buildAlertMessageExit();

        showDialog(ALERT_DIALOG);
    }

    @Override
    protected Dialog onCreateDialog(int id) {
        Dialog dialog = null;
        if (id == ALERT_DIALOG) {
            ContextThemeWrapper ctw = new ContextThemeWrapper(this,
                    R.style.AlertDialogCustom);
            AlertDialog.Builder builder = new AlertDialog.Builder(ctw);
            builder.setMessage("Hello World")
                    .setTitle("Alert Dialog")
                    .setIcon(android.R.drawable.ic_dialog_alert)
                    .setCancelable(false)
                    .setPositiveButton("Close",
                            new DialogInterface.OnClickListener() {
                                public void onClick(DialogInterface dialog,
                                        int which) {
                                    dialog.dismiss();
                                }
                            });
            dialog = builder.create();
        }
        if (dialog == null) {
            dialog = super.onCreateDialog(id);
        }
        return dialog;
    }

スタイル.xml

 <style name="AlertDialogCustom" parent="@android:style/Theme.Dialog">
     <item name="android:windowBackground">@null</item> 
    <item name="android:windowFrame">@null</item>
   </style>

その結果、テーマはありません

ここに画像の説明を入力

4

1 に答える 1

5

これの代わりに:

ContextThemeWrapper ctw = new ContextThemeWrapper(this,
                    R.style.AlertDialogCustom);
            AlertDialog.Builder builder = new AlertDialog.Builder(ctw);

試す

AlertDialog.Builder builder = new AlertDialog.Builder(this,
                R.style.AlertDialogCustom_);

But its require MIN API LEVEL 11.

サポートする必要がある場合は、Android >= 3.0おそらく.custom dialogAlertDialog

詳細については、このリンクを確認してください。

于 2013-04-04T12:00:22.903 に答える