首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TableLayout外边距

TableLayout外边距
EN

Stack Overflow用户
提问于 2019-08-01 17:40:37
回答 2查看 212关注 0票数 3

我制作了这个tableLayout,但正如您所看到的,它有一些我不知道如何删除的空白:https://imgur.com/a/qKcaJ92另一个问题是最后一行是打开的。这是我的xml:

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:gravity="center"
    android:id="@+id/slidelinearlayout">

        <TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:tools="http://schemas.android.com/tools"
            android:id="@+id/tl"
            android:layout_width="170dp"
            android:layout_height="180dp"
            android:layout_marginLeft="750dp"
            android:layout_marginTop="150dp"
            android:layout_marginRight="0dp"
            android:background="@android:color/white"
            android:padding="16dp"
            tools:context=".MainActivity">
            <TableRow
                android:id="@+id/tr_item_1"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@drawable/table_row_bg"
                android:padding="5dp">

                <TextView
                    android:id="@+id/item_1"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:background="@drawable/table_cell_bg"
                    android:paddingRight="10dp"
                    android:text="Flessibilità" />

                <TextView
                    android:id="@+id/f_item_1"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:background="@drawable/table_cell_bg"
                    android:paddingLeft="10dp"
                    android:paddingRight="10dp" />
            </TableRow>

            <TableRow
                android:id="@+id/tr_item_2"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@drawable/table_row_bg"
                android:padding="5dp">

                <TextView
                    android:id="@+id/item_2"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:background="@drawable/table_cell_bg"
                    android:paddingRight="10dp"
                    android:text="Fluidità" />

                <TextView
                    android:id="@+id/fl_item_2"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:background="@drawable/table_cell_bg"
                    android:paddingLeft="10dp"
                    android:paddingRight="10dp" />
            </TableRow>

            <TableRow
                android:id="@+id/tr_item_3"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@drawable/table_row_bg"
                android:padding="5dp">

                <TextView
                    android:id="@+id/item_3"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:background="@drawable/table_cell_bg"
                    android:paddingRight="10dp"
                    android:text="Originalità" />

                <TextView
                    android:id="@+id/o_item_3"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:background="@drawable/table_cell_bg"
                    android:paddingLeft="10dp"
                    android:paddingRight="10dp" />
            </TableRow>

            <TableRow
                android:id="@+id/tr_item_4"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@drawable/table_row_bg"
                android:padding="5dp">

                <TextView
                    android:id="@+id/item_4"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:background="@drawable/table_cell_bg"
                    android:paddingRight="10dp"
                    android:text="Elaborazione" />

                <TextView
                    android:id="@+id/el_item_4"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:background="@drawable/table_cell_bg"
                    android:paddingLeft="10dp"
                    android:paddingRight="10dp" />
            </TableRow>

            <TableRow
                android:id="@+id/tr_item_5"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@drawable/table_row_bg"
                android:padding="5dp">

                <TextView
                    android:id="@+id/item_5"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:background="@drawable/table_cell_bg"
                    android:paddingRight="10dp"
                    android:text="Titolo" />

                <TextView
                    android:id="@+id/t_item_5"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:background="@drawable/table_cell_bg"
                    android:paddingLeft="10dp"
                    android:paddingRight="10dp" />
            </TableRow>
        </TableLayout>

        <TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:tools="http://schemas.android.com/tools"
            android:id="@+id/tl_2"
            android:layout_width="300dp"
            android:layout_height="130dp"
            android:layout_marginLeft="750dp"
            android:layout_marginTop="370dp"
            android:background="@android:color/white"
            android:padding="16dp"
            tools:context=".MainActivity">
            <TableRow
                android:id="@+id/tr_item_6"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@drawable/table_row_bg"
                android:padding="5dp">

                <TextView
                    android:id="@+id/t1_item_1"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:background="@drawable/table_cell_bg"
                    android:paddingRight="10dp"
                    android:text="Tempo di reazione" />

                <TextView
                    android:id="@+id/tempo_item_1"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:background="@drawable/table_cell_bg"
                    android:paddingLeft="10dp"
                    android:paddingRight="10dp" />
            </TableRow>

            <TableRow
                android:id="@+id/tr_item_7"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@drawable/table_row_bg"
                android:padding="5dp">

                <TextView
                    android:id="@+id/t2_item_2"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:background="@drawable/table_cell_bg"
                    android:paddingRight="10dp"
                    android:text="Tempo di completamento" />

                <TextView
                    android:id="@+id/tempo_item_2"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:background="@drawable/table_cell_bg"
                    android:paddingLeft="10dp"
                    android:paddingRight="10dp" />
            </TableRow>

            <TableRow
                android:id="@+id/tr_item_8"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@drawable/table_row_bg"
                android:padding="5dp">

                <TextView
                    android:id="@+id/n_cancellature"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:background="@drawable/table_cell_bg"
                    android:paddingRight="10dp"
                    android:text="Numero cancellature" />

                <TextView
                    android:id="@+id/n_3"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:background="@drawable/table_cell_bg"
                    android:paddingLeft="10dp"
                    android:paddingRight="10dp" />
            </TableRow>
        </TableLayout>
    </RelativeLayout>

你知道我该怎么解决吗?正如您所看到的,所有标记都是关闭的。我使用RelativeLayout在屏幕上的任何地方设置元素,这会是问题的一部分吗?PS:对于边距问题,我甚至试图调整表的大小,但是没有什么改变。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-08-01 18:08:26

您没有看到您想要的布局,因为您在视图中使用的是固定大小:

不同的手机有不同的屏幕大小,在您的布局中,您在视图上使用固定大小(例如,固定大小是android:layout_marginTop="150dp" ),其结果是,在一个屏幕上可能看起来很好的东西(您的安卓工作室预览屏幕)在另一个屏幕(实际的手机)上看起来不太好。

如果您想在所有设备上以相同的方式查看您的表,可以使用ConstraintLayout指导方针来实现您想要的外观:

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:app="http://schemas.android.com/apk/res-auto"
  xmlns:tools="http://schemas.android.com/tools"
  android:layout_width="match_parent"
  android:layout_height="match_parent">



<TextView
    android:id="@+id/textView"
    android:layout_width="0dp"
    android:layout_height="0dp"
    android:text="TextView"
    app:layout_constraintBottom_toTopOf="@+id/textView5"
    app:layout_constraintEnd_toStartOf="@+id/textView4"
    android:background="@color/cardview_dark_background"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/textView3" />

<TextView
    android:id="@+id/textView2"
    android:layout_width="0dp"
    android:layout_height="0dp"
    android:text="TextView"
    app:layout_constraintBottom_toBottomOf="@+id/textView5"
    app:layout_constraintEnd_toEndOf="parent"
    android:background="@color/cardview_dark_background"
    app:layout_constraintStart_toEndOf="@+id/textView5"
    app:layout_constraintTop_toTopOf="@+id/textView5" />

<TextView
    android:id="@+id/textView3"
    android:layout_width="0dp"
    android:layout_height="0dp"
    android:text="1"
    app:layout_constraintBottom_toTopOf="@+id/textView"
    app:layout_constraintEnd_toStartOf="@+id/textView6"
    app:layout_constraintStart_toStartOf="parent"
    android:background="@color/colorAccent"
    app:layout_constraintTop_toTopOf="@+id/guideline" />

<TextView
    android:id="@+id/textView4"
    android:layout_width="0dp"
    android:layout_height="0dp"
    android:text="TextView"
    app:layout_constraintBottom_toBottomOf="@+id/textView"
    app:layout_constraintEnd_toEndOf="parent"
    android:background="@color/colorAccent"
    app:layout_constraintStart_toEndOf="@+id/textView"
    app:layout_constraintTop_toTopOf="@+id/textView" />

<TextView
    android:id="@+id/textView5"
    android:layout_width="0dp"
    android:layout_height="0dp"
    android:text="TextView"
    app:layout_constraintBottom_toTopOf="@+id/guideline2"
    android:background="@color/colorAccent"
    app:layout_constraintEnd_toStartOf="@+id/textView2"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/textView" />

<TextView
    android:id="@+id/textView6"
    android:layout_width="0dp"
    android:layout_height="0dp"
    android:text="2"
    app:layout_constraintBottom_toBottomOf="@+id/textView3"
    app:layout_constraintEnd_toEndOf="parent"
    android:background="@color/cardview_dark_background"
    app:layout_constraintStart_toEndOf="@+id/textView3"
    app:layout_constraintTop_toTopOf="@+id/textView3" />

<androidx.constraintlayout.widget.Guideline
    android:id="@+id/guideline"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    app:layout_constraintGuide_percent=".3" />

<androidx.constraintlayout.widget.Guideline
    android:id="@+id/guideline2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    app:layout_constraintGuide_percent=".5" />
</androidx.constraintlayout.widget.ConstraintLayout>

它看起来如下:(箭头指向指南以更好地理解)

现在,我知道,乍一看,这可能看起来像--很多工作--,有些人可能想知道这是否值得付出努力,但我相信ConstraintLayout是构建您的UI的正确方法:

  • 它真的很方便用户。
  • ConstraintLayout是非常容易和简单的学习。
  • 一旦您学习了它,您将看到您正在节省的大量开发时间,,因为您的UI制作简单快捷。
  • 约束布局是为了支持不同的屏幕大小,因此不需要为每个屏幕大小构建布局。
票数 0
EN

Stack Overflow用户

发布于 2019-08-01 18:00:04

您在“表”布局中使用了不必要的页边距,从而使布局远离屏幕。将表格布局分别为layout_width="Match_parent“和layout height="Wrap_Content”。

另外,尽量避免下面提到的边距。

代码语言:javascript
复制
android:layout_width="300dp"
android:layout_height="130dp"
android:layout_marginLeft="750dp"
android:layout_marginTop="370dp"

以上内容可以重写为

代码语言:javascript
复制
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginTop="0" 
android_gravity:center
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57314353

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档