2014-02-28 48 views
1

我的自定義對話框很窄。我想要更寬一點的對話框。 因此,我添加了一些填充,它會稍微變化。如果這種填充令人討厭,請將其忘掉。 請給我一些更廣泛的定製對話的想法。 這是截圖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) { 

           } 

          }); 
+1

發表您的屏幕截圖,因爲它是不能夠在這裏打開。 –

回答

3

的setContentView加入這一行()

dialogCur.getWindow().setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT); 
+0

完美工作..請等待5分鐘以接受答案:) – lynndragon

3

我無法看到屏幕截圖,但可能會遇到類似我的問題。

試試這個:

dialogCur.show(); 

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

** FILL_PARENT **已棄用。使用match_parent。 – Piyush

+0

也工作..Thz :) – lynndragon