在Android中对齐两个文本视图的基线

问题描述 投票:0回答:4

请在下面找到我的布局及其结果;我需要文本“Text message”与文本“Header”的基线对齐(请在代码和快照下方找到)。如果有人能给我指导,我会很高兴

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:weightSum="1.0"
android:baselineAligned="true"
>

<LinearLayout
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="0.2"
    android:background="@color/custom_orange"
    android:gravity="center"
    >


    <TextView
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:text="Header"
        android:textSize="25sp"
        android:id="@+id/title"
        android:gravity="center"
        android:background="@color/custom_red"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:text="Text message"
        android:textSize="10sp"
        android:id="@+id/language"
        android:gravity="center"
        android:background="@color/custom_green"/> 
</LinearLayout>

</LinearLayout>

这就是结果

enter image description here

这就是我需要的

enter image description here

android textview
4个回答
38
投票

使用RelativeLayout作为TextView的容器并添加属性

android:layout_alignBaseline="@+id/title"

id/语言 TextView


8
投票

对于

ConstraintLayout
只需使用它来对齐到另一个
TextView
的基线:

app:layout_constraintBaseline_toBaselineOf="@id/textView"

4
投票

只需在 LinearLayout(两个文本视图的线性布局)上使用 android:gravity="bottom" 并在两个 TextView 中使用 android:layout_height="wrap_content" 。


2
投票

在组件树上选择您想要位于同一基础的两个组件,右键单击,然后选择显示基线。只需拖动两个组件的基线即可。

© www.soinside.com 2019 - 2024. All rights reserved.