布局-开始-结束,左右概念

Layout-start-end,left-right concepts

我对以下属性的用法有点困惑。

> android:layout_marginRight and   android:layout_marginEnd
> android:layout_marginLeft and android:layout_marginStart
> android:layout_toLeftOf and android:layout_toStartOf
> android:layout_toRightOf and android:layout_toEndOf
> android:layout_gravity="right|end"
> android:layout_gravity="left|start"

以下是我掌握的一些事实mentioned.Please如果我错了请纠正我。

此外,我想知道如果我成对添加上述属性,如-

,是否会对performance/optimization产生不利影响
 <TextView
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:layout_gravity="right|end"
     android:layout_marginRight="@dimen/dp10"
     android:layout_marginEnd="@dimen/dp10"
     android:layout_marginLeft="@dimen/dp10"
     android:layout_marginStart="@dimen/dp10"
     android:layout_toLeftOf="@+id/bar"
     android:layout_toStartOf="@+id/bar"
     />

要在您的应用中支持 RTL,您应该:

  • 如果您的应用 API 级别 >=17,您应该使用“开始”和“结束”而不是“左”和“右”(例如:layout_marginStart)
  • 如果您的应用 API 级别 <17,那么除了“左”和“右”之外,您还应该添加“开始”和“结束”。换句话说 - 同时使用 layout_marginRight 和 layout_marginEnd 换句话说,您的任何视图都应如下所示: android:id="@+id/textView"

    android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginStart="16dp"
        android:layout_marginTop="20dp"
        android:text="@string/text_Field"
        android:textSize="24sp"
        android:textStyle="bold"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/imageView" />
    

    注意:android:layout_marginStart="16dp"

Source