目录

一、RTL介绍

二、举例


一、RTL介绍

从Android 4.2开始,Android SDK支持一种从右到左(RTL,Right-to-Left)UI布局的方式,不过在中国习惯的于都方式是从左至右LTR,不过在阿拉伯语、希伯来语等环境中的习惯是从右至左RTL。

为了布局支持快速变化,于是marginStart、marginEnd应运而生。

如果使用RTL布局,首先要在AndroidManifest.xml文件中将<application>标签的android:supportsRtl属性值设为"true",然后需要将相应视图标签的android:layoutDirection属性值设为"rtl"。

二、举例

举例:

布局代码:

1、默认布局

    <android.support.constraint.ConstraintLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"><Buttonandroid:id="@+id/btn1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="btn1"app:layout_constraintStart_toStartOf="parent"/><Buttonandroid:id="@+id/btn2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="btn2"app:layout_constraintEnd_toEndOf="parent"/></android.support.constraint.ConstraintLayout>

效果:

2、在根布局加入下面代码,其余不动

android:layoutDirection="rtl"

效果:

但如果引用的是marginLeft、marginRight,则是不受android:layoutDirection="rtl"属性影响

android 探究marginLeft、marginStart、marginRight、marginEnd相关推荐

  1. width、margin-left、margin-right使用auto

    CSS中框的水平格式编排的七个属性中,能够设置为auto的有三个属性,就是width.margin-left.margin-right.下面就其具体设置为auto时的一些情况予以说明: 1.三个属性均 ...

  2. margin-before: 1em; margin-after: 1em;margin-start:0px;margin-end: 0px;

    总的来说:这是CSS3.0的对于文章段P容器的定义方法语句!display:block这个样式,只定义了P容器为一个块;后面四句是CSS3中的样式定义方法:-webkit-margin-before: ...

  3. CSS - 浮动元素的margin-left和margin-right

    marigin-left和margin-right理解 margin-left:"盒子"元素的左外边距,当属性值增大,元素表现为向右移动,该属性值减少,元素表现为向左移动. mar ...

  4. 块级元素的margin-left和margin-right的用法注意

    此时是有效果显示的 因为html文档流默认是从上往下,从左往右进行显示的,所以此时是有效果的. 那如果此时把#son的块元素的margin-right:20px;  是没有效果的 此时是没有效果的,如 ...

  5. ANDROID 探究oom内幕

    从早期G1的192MB RAM开始,到现在动辄1G -2G RAM的设备,为单个App分配的内存从16MB到48MB甚至更多,但OOM从不曾离我们远去.这是因为大部分App中图片内容占据了50%甚至7 ...

  6. Android 探究 LayoutInflater setFactory

    1.概述 对于LayoutInflater setFactory,平时我们很少用到这个API,但是这个API我觉得还是有学习的必要的,能够很多意象不到的问题,准备围绕这方面编写一系列的文章. 本篇包含 ...

  7. Android国际化,阿语RTL适配总结

    语言切换 语言种类 例如: /*** 英国(英语)*/EN("en"),/*** 西班牙(西班牙语)*/ES("es"),/*** 西班牙(葡萄牙语)*/PT( ...

  8. Android MarginLeft与MarginStart的区别

    在写layout布局的时候,我们会发现有这样几个比较相似的属性: MarginStart   MarginLeft MarginEnd    MarginRight  这些属性的区别是什么?  根据a ...

  9. Android MarginLeft与MarginStart的差别

    在写layout布局的时候,我们会发现有这样几个比較相似的属性: MarginStart   MarginLeft MarginEnd    MarginRight 这些属性的差别是什么?  依据ap ...

最新文章

  1. cad新手必练300图_杭州富阳新凳cad制图速成短期培训中心多年教学
  2. 我理解的【旁路代理】
  3. js高程(二)-----继承
  4. mysql数据库入门教程(8):数据的基本类型
  5. android 技能标签功能_iOS和Android用户体验设计差异
  6. c语言选择菜单程序设计,c语言课程设计报告-- 使用菜单选择趣味程序.doc
  7. php cpu缓存 执行 代码,缓存PHP页面的代码,可以减轻CPU和MYSQL负担
  8. YOLODet最新算法的目标检测开发套件,优化到部署
  9. Windows 10 开发日记(二)-- 手势顺序调研
  10. node.js 实现udp传输_nodejs实现UDP组播示例方法
  11. 华为odjava机试题_手心里的咕咕机,华为手机大小,性价比赶超小米的学习打印机...
  12. 三菱PLC编程指令简介
  13. Ctfmon.exe是什么进程?
  14. html网页多人聊天,html5+js+.Net的即时多人聊天
  15. 【求职面试】程序员面试如何做自我介绍?
  16. C# WebAPI 上传文件和图片
  17. PTA——日K蜡烛图
  18. python处理xml文件_Python处理XML之DOM解析
  19. Vue全局共享数据之globalData,vuex,本地存储使用方法
  20. 7-2 点赞(20 分)

热门文章

  1. 什么是MD5哈希校验和? 如何创建和验证MD5?
  2. 【Java开发语言 00】环境搭建(配置java环境+‘javac’不是内部或外部命令,也不是可运行的程序+安装idea+idea基本用法+新建项目+在新项目的src路径下新建包和类+基础调试+路径)
  3. Python摩尔庄园自动弹钢琴
  4. 《学生信息管理系统》知识点总结
  5. 白云黑土春晚争当火炬手 精彩台词提前曝光
  6. 正交试验设计法是什么意思?【软件测试培训】
  7. APEX包管理器简述(一)
  8. html给图片加描边,PS修图之进行图片描边,教你两种方法
  9. 前端小技巧:ELement UI时间控件el-date-picker误差8小时
  10. arcmap 连接天地图