我有这个布局,
<TableLayout android:stretchColumns="0"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TableRow>
<AutoCompleteTextView
android:id="@+id/StationTextView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:completionThreshold="2"
android:inputType="textAutoComplete"
android:imeOptions="flagNoExtractUi|actionSearch" />
<Button android:id="@+id/ShowTimesButton"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:drawableLeft="@drawable/ic_btn_search" />
</TableRow>
</TableLayout>
从一开始,一切都如我所愿,例如textview占用了按钮不占用的所有空间。但是如果textview被一个长字符串填满,它会将按钮从屏幕上移开,我希望布局在屏幕内受到限制,并且永远不会将内容从屏幕上移开。我怎么能这样做?
答案 0 :(得分:4)
尝试在布局中使用重量:
<TableLayout android:stretchColumns="0" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TableRow android:gravity="center_vertical">
<AutoCompleteTextView android:id="@+id/StationTextView"
android:layout_height="wrap_content"
android:completionThreshold="2"
android:inputType="textAutoComplete"
android:imeOptions="flagNoExtractUi|actionSearch"
android:layout_weight="1" android:layout_width="0dp"/>
<Button android:id="@+id/ShowTimesButton"
android:layout_height="wrap_content"
android:drawableLeft="@drawable/ic_btn_search"
android:layout_weight="0" android:layout_width="wrap_content"/>
</TableRow>
</TableLayout>