3

AlertDialog.Builderで構築されたダイアログがあり、ダイアログの背景色を変更したいと思います。

私はインターネットでContextThemeWrapper(API 10で動作)を使用して実行できることを読んでいますが、動作しません。

私がしていることは:

ContextThemeWrapper wrapper = new ContextThemeWrapper(this, R.style.MyDialogTheme);
AlertDialog alertDialog = new AlertDialog.Builder(wrapper)).create();  

<style name="MyDialogTheme" parent="@android:style/Theme.Dialog">
    <item name="android:background">#FFFFFF</item>
</style>

なぜこれが機能しないのですか?

前もって感謝します!

4

3 に答える 3

0

カスタマイズされたダイアログボックスには、次のコードを使用します。

protected Dialog onCreateDialog(int dialogId) {
    LayoutInflater inflater = 
        (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    final AlertDialog.Builder builder = new AlertDialog.Builder(this);
    final View viewMessEdit = inflater.inflate(
        R.layout.example,
        (ViewGroup) findViewById(R.id.dialog_mess_edit_root));
    builder.setView(viewMessEdit);
    viewMessEdit.setBackgroundResource(R.color.pink_dark);
}

そして、このリンクをたどってください:

于 2012-10-19T11:35:13.257 に答える
0

AlertDialog を AlertDialog.THEME_DEVICE_DEFAULT_LIGHT で変更したので、ビルダーを次のように記述しました。

AlertDialog.Builder dialog = new AlertDialog.Builder(ApplicationCertificatesListFragment.this.getActivity(), AlertDialog.THEME_DEVICE_DEFAULT_LIGHT);

于 2016-08-04T10:05:22.213 に答える