Skip to content Skip to sidebar Skip to footer

Android Custom Dialog Background

I need to show a custom dialog in my Android application. Standard AlertDialog design is unacceptable. Android docs say: Tip: If you want a custom dialog, you can instead display

Solution 1:

make theme like this

<style name="ThemeDialogCustom">
<item name="android:windowFrame">@null</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
<item name="android:windowBackground">@color/transparent</item>
<item name="android:colorBackgroundCacheHint">@null</item>
</style>

Solution 2:

Try...

You can avoid the gray background like this, Here I did get transparent background.

    ........
    Dialog dialog = new Dialog(MainActivity.this);
    dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
    Window window = dialog.getWindow();
    window.setBackgroundDrawableResource(android.R.color.transparent);
    dialog.setContentView(R.layout.popup_layout);
    Button dialogBtn= (Button) dialog.findViewById(R.id.btn);

    dialogBtn.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            //task
        }
    });
    dialog.show();
    .......

Solution 3:

dialog.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);

Solution 4:

dialog.getWindow().setBackgroundDrawableResource(android.R.color.transparent);

Solution 5:

i have used this as a style:

<style name="DialogTransparent" parent="Theme.AppCompat.Dialog">
    <item name="android:windowFrame">@null</item>
    <item name="android:windowBackground">@android:color/transparent</item>
    <item name="android:windowIsFloating">true</item>
    <item name="android:windowContentOverlay">@null</item>
    <item name="android:windowTitleStyle">@null</item>
    <item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
    <item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item>

    <item name="android:background">@android:color/transparent</item>
</style>
<!-- <item name="android:backgroundDimEnabled">false</item> -->

it has also background transparent, setting the brackgroundDimEnabled parameter to false works for not showing the gray background that shows with the dialog in his back.


Post a Comment for "Android Custom Dialog Background"