0

I'm trying to create custom Dialog but it doesn't creates with normal width of Doalog. With title it has normal width, if I set windowIsFloating attr in styles to true then it becomes full width but shadow is gone. Please help me to create normal dialog with custom layout and normal sizes of dialog.

<style name="MainTheme.DialogTheme" parent="@android:style/Theme.Dialog">
    <item name="android:windowBackground">@android:color/transparent</item>
    <item name="android:layout_gravity">center</item>
    <item name="android:windowNoTitle">true</item>
</style>

import android.app.Dialog;
import android.content.Context;
import android.os.Bundle;

        public class MyDialog extends Dialog {

            public MyDialog(Context context) {
                super(context);
            }

            @Override
            protected void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.my_dialog);
            }

        }

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:windowMinWidthMajor="@android:dimen/dialog_min_width_major"
    card_view:cardBackgroundColor="@color/bg_color"
    card_view:cardCornerRadius="5dp">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            android:padding="24dp">

            <com.astuetz.RobottoRegularTextView
                android:id="@android:id/text1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:paddingBottom="16dp"
                android:text="text1"
                android:textColor="@color/title_text_color"
                android:textSize="20sp"
                android:textStyle="bold" />

            <com.astuetz.RobottoRegularTextView
                android:id="@android:id/text2"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="text2"
                android:textColor="#CC000000"
                android:textSize="14sp" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="36dp"
            android:gravity="center|right"
            android:orientation="horizontal"
            android:paddingBottom="16dp"
            android:paddingLeft="16dp"
            android:paddingRight="16dp">

            <Button
                android:id="@android:id/button1"
                style="?android:attr/borderlessButtonStyle"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@android:color/transparent"
                android:gravity="center"
                android:minHeight="36dp"
                android:minWidth="88dp"
                android:text="btn1"
                android:textAllCaps="true"
                android:textSize="14sp"
                android:textStyle="bold" />

            <Button
                android:id="@android:id/button2"
                style="?android:attr/borderlessButtonStyle"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@android:color/transparent"
                android:gravity="center"
                android:minHeight="36dp"
                android:minWidth="88dp"
                android:text="btn2"
                android:textAllCaps="true"
                android:textSize="14sp"
                android:textStyle="bold" />
        </LinearLayout>

    </LinearLayout>
</android.support.v7.widget.CardView>
AskQuestion
  • 346
  • 4
  • 18

1 Answers1

0

I remember having trouble with dialog's width and re-setting it helped. Perhaps it will help you too:

<item name="android:minWidth">0dp</item>
<item name="android:maxWidth">@null</item>
Simas
  • 43,548
  • 10
  • 88
  • 116