带有 TextView 的 GridLayout 创建额外的边距
GridLayout with TextView creating extra margins
我正在尝试创建一个应该水平滚动的 GridLayout,并使用以下布局显示各种 TextView。
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content">
<GridLayout
android:id="@+id/chart_grid"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:alignmentMode="alignBounds"
android:background="@color/colorAccent"
android:columnCount="8">
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test goes onto two lines"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
</GridLayout>
</HorizontalScrollView>
</android.support.constraint.ConstraintLayout>
谁能告诉我为什么一个 TextView 的文本超过两行时会显示这样?
如果文本不超过两行,则呈现良好。
原来我需要在 TextView 中设置 android:layout_gravity="top"
来实现我想要的。
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:layout_gravity="top"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test with some text"
android:textSize="10sp"
android:textStyle="normal" />
我正在尝试创建一个应该水平滚动的 GridLayout,并使用以下布局显示各种 TextView。
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content">
<GridLayout
android:id="@+id/chart_grid"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:alignmentMode="alignBounds"
android:background="@color/colorAccent"
android:columnCount="8">
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test goes onto two lines"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test"
android:textSize="10sp"
android:textStyle="normal" />
</GridLayout>
</HorizontalScrollView>
</android.support.constraint.ConstraintLayout>
谁能告诉我为什么一个 TextView 的文本超过两行时会显示这样?
如果文本不超过两行,则呈现良好。
原来我需要在 TextView 中设置 android:layout_gravity="top"
来实现我想要的。
<android.support.v7.widget.AppCompatTextView
android:layout_width="80dp"
android:layout_height="35dp"
android:layout_marginBottom="1dp"
android:layout_marginEnd="1dp"
android:layout_marginStart="0dp"
android:layout_marginTop="0dp"
android:layout_gravity="top"
android:background="@android:color/white"
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:paddingBottom="0dp"
android:text="Test with some text"
android:textSize="10sp"
android:textStyle="normal" />