2011-12-28 92 views
0

我想擴展AutoCompleteTextView的UI。功能很好,我需要的只是在右側添加一個按鈕,看起來像一個下拉按鈕。可悲的是AutoCompleteTextView有一個'自然'的邊際,我不能減少到0.擴展視圖的UI

我現在能做什麼? 我必須覆蓋onDraw()& onMeasure()來存檔我的目標(是否有更簡單的方法)?

回答

0

你可以把兩者AutoCompleteTextView和按鈕拖到FrameLayout,添加一些額外的保證金權利AutoCompleteTextView使FrameLayout稍大,並對齊按鈕父權。實際上,這兩個視圖會干擾,但對於用戶而言,它們將在沒有任何邊距的情況下出現在另一個旁邊。
另一種選擇可能是將自定義背景設置爲AutoCompleteTextView(可能是修改了從Android源獲取的原始內容並刪除了邊距)。

只記得你可以提供負利潤率。例如,您可以將兩個視圖都放到LinearLayout上,並將按鈕的左邊距設置爲-5dp。但是,您仍然必須爲按鈕提供自定義無邊框背景。

+0

設置自定義背景右邊是解決我的XML問題( '形狀'有幾個屬性)。 – Klau3 2011-12-28 11:09:36

0

可以使用RelativeLayout把按鈕的AutoCompleteTextView

enter image description here

樣品

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="horizontal" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    > 
    <Button android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:background="@drawable/btn_close_pressed" 
android:layout_alignParentRight="true" 
android:id="@+id/myBtn" 
></Button> 
<AutoCompleteTextView android:id="@+id/myautocomplete" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:completionThreshold="1" 
android:layout_toLeftOf="@+id/myBtn" 
/> 
</RelativeLayout>