2011-02-07 33 views
3

我有一個相對簡單的佈局,它包含一個EditText。活動本身使用對話框主題。對話框變得很小,編輯文本甚至不足以顯示初始字符串。android:minEms在對話框主題活動中被忽略

我知道微小的對話框是一個常見問題(IIRC Dianne提到對話框默認使用父窗口的wrap_content),典型的解決方法是強制對話框在onCreate中具有一定的大小。我更願意在佈局中解決這個問題。

這個想法是給EditText一個android:minEms爲30,給它一個合理的大小(沒有在平板電腦上可笑的巨大),但似乎被忽略 - EditText(和對話)仍然很小。

備註 - 對話框的高度也太小 - 底部的按鈕大小應爲一半。

佈局,以供參考:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    > 
    <TextView android:id="@+id/TextView01" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="@string/title" 
     android:gravity="center" 
    /> 
    <RelativeLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     > 
    <ImageButton 
     android:id="@+id/file_manager" 
     android:src="@drawable/ic_launcher_folder_small" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:onClick="pickFile" 
     /> 
     <EditText android:id="@+id/file" 
      android:text="@string/default_file" 
      android:inputType="text" 
      android:minEms="30" 
      android:layout_toLeftOf="@+id/file_manager" 
      android:layout_height="wrap_content" 
      android:layout_width="fill_parent" 
     /> 
    </RelativeLayout> 
    <Button 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:id="@+id/action" 
     android:onClick="performAction" 
     android:text="@string/action"> 
    </Button> 
</LinearLayout> 

回答

3

你的RelativeLayout更改爲android:layout_width="wrap_content"

+0

你是個天才!我的錯誤是假設fill_parent總是會比wrap_content更長/更長。 – EboMike 2011-02-10 16:22:40