重力不适用于多种语言

时间:2018-08-16 04:42:57

标签: android android-constraintlayout gravity

这是我的TextView

<TextView
    android:id="@+id/btnAgree"
    android:layout_height="56dp"
    android:layout_width="0dp"
    android:gravity="center"
    android:layout_marginBottom="21dp"
    android:foreground="?attr/selectableItemBackground"
    android:text="@string/label_gdpr_agree"
    android:textSize="14sp"
    android:textStyle="bold"
    android:background="@color/yellow_gdpr_button"
    app:layout_constraintBottom_toTopOf="@id/tvGdprPage"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    />

问题在于它在English上运行良好,但在Vietnamese中却无法正常运行。在Vietnamese lang中,它只是水平居中(顶部居中)。有人遇到这个问题吗?下面的图片在Vietnamese中。

enter image description here

2 个答案:

答案 0 :(得分:0)

您应该将``相对布局''作为父布局。然后使用alignParentEnd属性支持rtl。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

   <TextView
        android:id="@+id/btnAgree"
        android:layout_height="56dp"
        android:layout_width="0dp"
        android:gravity="center"
        android:layout_marginBottom="21dp"
        android:foreground="?attr/selectableItemBackground"
        android:text="@string/label_gdpr_agree"
        android:textSize="14sp"
        android:textStyle="bold"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:layout_marginTop="@dimen/dp100"
        />


</RelativeLayout>

答案 1 :(得分:0)

无法跟踪为什么会遇到这样的问题。

下面提到的代码是我写的,可以正常工作。

<?xml version="1.0" encoding="utf-8"?>

<android.support.constraint.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:id="@+id/btnAgreeEnglish"
        android:layout_height="56dp"
        android:layout_width="0dp"
        android:gravity="center"
        android:foreground="?attr/selectableItemBackground"
        android:text="This is my text. This is my text."
        android:textSize="14sp"
        android:textStyle="bold"
        android:background="@android:color/holo_blue_bright"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintEnd_toEndOf="parent" />

    <TextView
        android:id="@+id/btnAgreeVietnamese"
        android:layout_height="56dp"
        android:layout_width="0dp"
        android:gravity="center"
        android:layout_marginTop="30dp"
        android:foreground="?attr/selectableItemBackground"
        android:text="Đây là văn bản của tôi. Đây là văn bản của tôi."
        android:textSize="14sp"
        android:textStyle="bold"
        android:background="@android:color/holo_blue_bright"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@id/btnAgreeEnglish"
        app:layout_constraintEnd_toEndOf="parent" />

</android.support.constraint.ConstraintLayout>

我希望这会对您有所帮助,但是如果您仍然遇到此类问题,欢迎您答复。 :-)