0

我在水平布局中有一个 EditText 和一个 Spinner。我希望微调器的大小仅与容纳其最宽文本和 EditText 占用剩余空间所需的一样大。是否有捷径可寻?

例如,理想情况下,我想将微调器的宽度指定为平均字体宽度的某个倍数,在 xml 文件中声明为属性。

否则,我想我需要在运行时做一些事情,例如获取微调器中每个项目的文本宽度,并为单选按钮图标获取最大 + 一些余量。

这是我的xml:

<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:orientation="horizontal" >

  <EditText
    android:id="@+id/text"
    android:layout_weight="1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:hint="@string/text" />

  <Spinner
    android:id="@+id/type"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:spinnerMode="dropdown"
    android:textAppearance="@android:style/TextAppearance.Medium" />
</LinearLayout>

谢谢。

4

1 回答 1

1

试试这个

<LinearLayout
    android:id="@+id/rl"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_marginBottom="10dp"
    android:orientation="horizontal" >

    <EditText
        android:id="@+id/editText1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1" >
    </EditText>

    <Spinner
        android:id="@+id/spinner1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
</LinearLayout>
于 2012-11-30T22:10:17.383 回答