gpt4 book ai didi

android - TableRow 比通常的 android TableLayout 占用更多空间

转载 作者:行者123 更新时间:2023-11-29 02:01:28 25 4
gpt4 key购买 nike

美好的一天,我在处理下面的图片时遇到了问题。如您所见,表格行占用了太多空间,我想减少它们,因为它们下面还有其他 View 小部件。我怎样才能做到这一点?谢谢。

enter image description here

这是我的 xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">

<TableLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:weightSum="3"
android:padding="8dp"
android:background="@drawable/rounded_date_filter">

<TableRow
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1">

<TextView
android:id="@+id/datefilter_text_from_id"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_weight="1"
android:layout_marginLeft="10dp"
android:layout_marginTop="10dp"
android:text="@string/from_text">
</TextView>
<TextView
android:id="@+id/datefilter_text_to_id"
android:layout_width="10dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginLeft="40dp"
android:layout_marginTop="10dp"
android:text="01-01-2012">
</TextView>
</TableRow>

<View
android:layout_width="fill_parent"
android:layout_height="1px"
android:background="#606060">
</View>

<TableRow>
<TextView
android:id="@+id/datefilter_text_from_id"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_weight="1"
android:layout_marginLeft="10dp"
android:layout_marginTop="10dp"
android:text="@string/to_text">
</TextView>

<TextView
android:id="@+id/datefilter_text_to_id"
android:layout_width="10dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginLeft="40dp"
android:layout_marginTop="10dp"
android:text="01-09-2012">
</TextView>
</TableRow>

<View
android:layout_width="fill_parent"
android:layout_height="1px"
android:background="#606060">
</View>

<TableRow>
<TextView
android:id="@+id/datefilter_text_from_id"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_weight="1"
android:layout_marginLeft="10dp"
android:layout_marginTop="10dp"
android:text="@string/groupby">
</TextView>

<TextView
android:id="@+id/datefilter_text_to_id"
android:layout_width="10dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginLeft="40dp"
android:layout_marginTop="10dp"
android:text="day">
</TextView>
</TableRow>

</TableLayout>

<Button
android:id="@+id/reset_filter_button_id"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/reset_filters">
</Button>
</LinearLayout>

最佳答案

我已经测试了您的布局,最后看来 weightSumlayout_weight 不负责任。将 TableLayout 设置为包装内容和 TextViews 上的 layout_weight 似乎扩展了 TableLayout 并使其具有你看到的行为。

如果您将 TableLayout 的宽度设置为 FILL_PARENT,问题就会消失:

// ...
<TableLayout
android:layout_width="fill_parent"
// ...

这在某种程度上是有道理的,因为当父级实际上没有可用空间(因为 wrap_content)时您尝试使用布局权重,这不会有任何好处。

此外,如果这就是您的全部布局,您可以改进它并将 Button 直接添加到 TableLayout(在另一个 TableRow 中)不再需要包装器 LinearLayout

关于android - TableRow 比通常的 android TableLayout 占用更多空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12481687/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com