1

我有一个带有自动完成文本视图的活动、一个添加按钮和一个在用户键入时弹出的列表视图

在此处输入图像描述

在 xml 中:

<Button
    android:id="@+id/locationButton"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:minWidth="46dip"
    android:onClick="getLocation"
    android:text="@string/icon_map_marker" />

<AutoCompleteTextView
    android:id="@+id/autocomplete_city"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:dropDownVerticalOffset="0.2dp"
    android:hint="@string/city_hint"
    android:inputType="text"
    android:layout_alignBottom="@+id/locationButton"
    android:layout_alignTop="@id/locationButton"
    android:layout_toLeftOf="@id/locationButton"/>

问题是由自动完成过程创建的列表视图与自动完成文本视图具有相同的宽度。但是它应该有全宽,包括按钮的宽度(见图)。任何想法如何做到这一点?

4

4 回答 4

1

使用 locationButton 在 AutoCompleteTextView 中删除这些对齐,然后尝试将其调整为全宽。

于 2013-11-11T18:20:41.837 回答
1

找到了答案: http: //developer.android.com/reference/android/widget/AutoCompleteTextView.html#attr_android :dropDownWidth

环境

android:dropDownWidth="match_parent"

在自动完成文本视图上解决了这个问题。

于 2013-11-11T19:26:07.503 回答
0

在另一个布局下创建 listLiew,执行以下操作:

<LinearLayout>
    android:width="fill_parent"
    android:height="fill_parent"
    android:orientation="vertical"
    <LinearLayout>
        android:orientation="horizontal"
        ...
        <AutoCompleteTextView> ... </AutoCompleteTextView>
        <Button> ... </Button>
    </LinearLayout>
    <ListView>
        ...
        android:width="fill_parent"
        android:height="fill_parent"
    </ListView>
</LinearLayout>

希望这可以帮助 (:

于 2013-11-11T18:20:15.447 回答
0

使用此布局。我试过并检查了。这很有帮助。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
<LinearLayout 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:weightSum="100">
<AutoCompleteTextView
    android:id="@+id/autocomplete_city"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="70"
    android:dropDownVerticalOffset="0.2dp"
    android:hint="city_hint"
    android:inputType="text"/>

 <Button
    android:id="@+id/locationButton"
    android:layout_width="0dp"
    android:layout_weight="30"
    android:layout_height="wrap_content"
    android:minWidth="46dip"
    android:onClick="getLocation"
    android:text="icon" />

 </LinearLayout>
 <ListView 
     android:id="@+id/listview"
     android:layout_width="fill_parent"
     android:layout_height="fill_parent">
 </ListView>

</LinearLayout>
于 2013-11-11T18:42:02.643 回答