2014-10-16 82 views
1

即使我沒有在下拉列表項目佈局中設置邊距,下拉列表中也會顯示右邊距和左邊距。我希望它匹配到autocompletetextview的寬度。我怎樣才能做到這一點?AutoCompleteTextView爲下拉列表創建邊距

這裏是我的AutoCompleteTextView XML代碼:

<LinearLayout 
       android:id="@+id/headerlogo" 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent" 
       android:layout_margin="0dp" 
       android:layout_weight="1" 
       android:clickable="true" 
       android:gravity="center_vertical" 
       android:orientation="horizontal" 
       android:weightSum="9" > 

       <AutoCompleteTextView 
        android:id="@+id/autocomplete_name" 
        android:layout_width="wrap_content" 
        android:layout_height="fill_parent" 
        android:layout_weight="7" 
        android:background="@drawable/edittextback" 
        android:ems="10" 
        android:textSize="15sp" 
        android:hint="@string/codehint" 
        android:textColorHint="@color/hintgrey" 
        android:paddingRight="30dp" 
        android:paddingLeft="10dp" 
        android:singleLine="true" 
        android:ellipsize="end" 
        android:completionThreshold="1"> 
       </AutoCompleteTextView> 

       <Button 
        android:id="@+id/btnsearch" 
        android:layout_width="wrap_content" 
        android:layout_height="fill_parent" 
        android:layout_weight="2" 
        android:background="@drawable/buttondarkblue" 
        android:text="X" 
        android:textColor="@color/white" /> 
      </LinearLayout> 

和項目佈局的下拉列表:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="match_parent" 
    android:background="@color/white" 
    android:orientation="vertical"> 
     <TextView 
     android:id="@+id/route" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:textSize="15sp" 
     android:singleLine="true" 
     android:ellipsize="end" 
     android:padding="5dp" 
     android:textColor="@color/loginblue" 
     android:text="ASD"></TextView> 
</LinearLayout> 

回答

0

我不知道,你有你的答案。但可能有幫助。

如果您在自定義適配器中爲下拉列表分配佈局,併爲TextView或根視圖的填充(例如LinearLayout)設置邊距,則此功能無效。我做了如下:

我設置背景爲style.xml文件的下拉列表:

<item name="android:popupBackground">@drawable/dropdown_list_bg</item> 

然後在dropdown_list_bg.xml文件我寫這幾行:

<item android:right="1dip" android:left="1dip"> 
    <shape> 
     <solid android:color="@color/dropdownListBg"/> 
     <corners android:radius="@dimen/corner"/> 
    </shape> 
</item> 

正如你可以看到我設置的「padding right」「padding left」 with 「android:right」 and 「android:left」屬性在可繪製的xml文件中。