我的Android应用中有以下布局:
<?xml version="1.0" encoding="utf-8"?>
<TableLayout android:id="@+id/widget41"
android:layout_width="fill_parent" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical">
<tablerow>
<Button android:id="@+id/button_when" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:padding="10px"
android:text="When">
</Button>
</tablerow>
<tablerow>
<EditText android:id="@+id/text_description" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:padding="10px"
android:text="What happened?" android:textSize="18sp">
</EditText>
</tablerow>
<tablerow>
<Button android:id="@+id/button_location" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:padding="10px"
android:text="Location">
</Button>
</tablerow>
如何制作我的布局,以便在中间(带有EditText的那个)扩展以填充未被第一个和第三个项目占据的整个屏幕空间?
答案 0 :(得分:1)
这可以比Varundroid的建议简单得多。 android.widget.TableRow
是android.widget.LinearLayout
的子类,因此可以采用布局可以采用的所有参数。所以这将解决问题:
<TableRow
android:layout_height='fill_parent'
android:layout_weight='1.0'
android:layout_width='fill_parent'
>
…
</TableRow>
请注意,在需要扩展时通常需要设置android:layout_weight
。
答案 1 :(得分:0)
这很简单。
有两种方式
android:layout_height="space which has been left"
另一种方法是更改android:layout_height直到它覆盖整个屏幕
我的个人意见是第一个,因为屏幕尺寸可以因设备而异,所以你应该安全地玩。
顺便问一下,你确定你的代码有效吗?因为t
标记<tablerow>
中的小<TableRow>
字母应为android:layout_height and android:layout_width
。如果你不在每个标签中传递{{1}},那么它可能会导致你的布局出错。
安全播放,否则您的应用将被证明是错误的。
我希望它会有所帮助。