如何使自定义对话更广泛?

时间:2014-02-28 09:40:49

标签: android customdialog

我的自定义对话框很窄。我想要更广泛的对话框。 所以,我添加一些填充,它改变了一点..如果这个填充是烦人的,只要忘记它。 请给我一些更广泛的自定义对话框的想法。 这是屏幕截图ScreenShot

这是我的自定义对话框布局xml layout_customdialog.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_gravity="fill_horizontal"
    android:background="@android:color/transparent"
    android:orientation="vertical"
    android:padding="15dp"
    android:paddingBottom="10dp"
    android:paddingLeft="20dp"
    android:paddingRight="20dp"
    android:paddingTop="10dp" >

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

        <Button
            android:id="@+id/btnViewCur_close"
            android:layout_width="28dp"
            android:layout_height="28dp"
            android:layout_gravity="right"
            android:adjustViewBounds="false"
            android:background="@drawable/closebutton_selector"
            android:clickable="true"
            android:src="@drawable/ok"
            android:textColorLink="@android:color/transparent" />

    </LinearLayout>

  <LinearLayout
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:layout_marginBottom="8dp" >

        <TextView
            android:id="@+id/titleCustomWorldCurrencyText"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:layout_weight="1"
            android:gravity="left"
            android:padding="5dp"
            android:text="@string/titleCurrencyCustom"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:textColor="@color/Green"
            android:textStyle="normal"
            android:typeface="serif" />

    </LinearLayout>

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:paddingTop="15dp" >

        <!-- -add your views here -->

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

            <TextView
                android:id="@+id/usdWorldCurCustomDialogText"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:background="@color/SkyBlue"
                android:padding="3dp"
                android:text="@string/lblUsdCustomDialog"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textStyle="normal"
                android:typeface="serif" />

            <EditText
                android:id="@+id/usdWorldCurCustomEditText"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginBottom="5dp"
                android:ems="10"
                android:inputType="number" />
        </LinearLayout>

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

            <TextView
                android:id="@+id/worldCurCustomDialogText"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="10dp"
                android:background="@color/SkyBlue"
                android:padding="3dp"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textStyle="normal"
                android:typeface="serif" />

            <EditText
                android:id="@+id/worldCurCustomDialogEditText"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:ems="10"
                android:inputType="number" >

            </EditText>

            <Button
                android:id="@+id/btnCurrencyCustomConvert"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="right"
                android:layout_marginTop="5dp"
                android:text="@string/btnCurrencyCustomConvert" />

        </LinearLayout>

    </LinearLayout>

</LinearLayout>

这是java文件

Dialog dialogCur = new Dialog(MainTabActivity.this);
Window windowCur = dialogCur.getWindow();

dialogCur.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialogCur.setContentView(R.layout.layout_customdialog);

    //acquire ids, I skip them

dialogCur.setCanceledOnTouchOutside(false); 

dialogCur.show();

btnCloseCustomDialogCurrency
                            .setOnClickListener(new OnClickListener() {

                                public void onClick(View v) {

                                    dialogCur.dismiss();

                                }

                            });

                    btnConvertCurrency
                            .setOnClickListener(new OnClickListener() {

                                public void onClick(View arg0) {

                                }

                            });

2 个答案:

答案 0 :(得分:3)

setContentView()

之后添加此行
   dialogCur.getWindow().setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);

答案 1 :(得分:3)

我无法看到屏幕截图,但您可能会遇到类似我的问题。

试试这个:

dialogCur.show();

dialogCur.getWindow().setLayout(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);