layout_marginStart与layout_marginLeft的区别

一直不太懂layout_marginStart与layout_marginLeft两者之间的区别,今天强迫自己google了一下,记录下来!
资料源于Android Developers Blog.
有两种阅读方式,从左到右(left-to-right,即LTR)和从右到左(right-to-left,即RTL)。
简单来说,对于LTR,startend等同于leftright;而对于RTL,则相反。
为了使用RTL布局,需要实现以下两点:

  1. AndroidManifest中声明支持RTL布局:在 元素下添加android:supportsRtl="true"声明。
  2. 在App中用startend来替代leftright
  • 如果用4.2及以上编译( targetSdkVersion或者minSdkVersion大于等于17),则startend来替代leftright,例如:android:paddingLeft 应改为android:paddingStart
  • 如果用4.2以下编译( targetSdkVersion或者minSdkVersion小于等于16),两者都必须使用,例如:需要同时使用android:paddingLeftandroid:paddingStart

Android4.2也引入了一些新的API来控制LTR和RTL模式,如:

  • android:layoutDirection
  • android:textDirection
  • android:textAlignment

你可能感兴趣的:(layout_marginStart与layout_marginLeft的区别)