android layout_gravity 失效 不管用 没用
2014-08-06 15:13
218 查看
http://www.cnblogs.com/xiaoQLu/archive/2012/10/22/2733631.html
相信对于Android的初学者来说,大家都曾经被layout里这两个极其相似的属性迷惑过。
简单使用一下搜索工具,我们就不难找到下面这样的答案:
layout_gravity 表示组件自身在父组件中的位置
gravity 表示组件的子组件在组件中的位置
看似很简单嘛
为什么这么简单的道理,总有同学会发现,在“某些时候”,layout_gravity这个属性不好使了,失去了它应有的作用
问题究竟出在哪里了呢?
当作为父layout的LinearLayout的属性为android:orientation="vertical" 的时候,android:layout_gravity="?"这里设为横向的时候才能生效。比如:left,right,center_horizontal等;
当作为父layout的LinearLayout的属性为android:orientation="horizental" 的时候,android:layout_gravity="?"这里设为纵向的时候才能生效。比如:top,bottom,center_vertical等;
有一个比较特殊的是center,不管是横向还是纵向的时候,它总有一个方向起作用, 因为LinearLayout他只可能有一个方向,
这nm的,确实让人蛋疼。其实也有点道理吧,就是LinearLayout横向的时候,如果有多个孩子,那就不知道把谁放最右了,
有两个解决方法吧,
(1)用RelativeLayout吧,这个算是费话吧 ,哈哈
(2)在LinearLayout中设置android:gravity这个从官方api的解释是怎么放置它的内容,LinearLayout的内容不就是他的孩子么,问题解决
相信对于Android的初学者来说,大家都曾经被layout里这两个极其相似的属性迷惑过。
简单使用一下搜索工具,我们就不难找到下面这样的答案:
layout_gravity 表示组件自身在父组件中的位置
gravity 表示组件的子组件在组件中的位置
看似很简单嘛
为什么这么简单的道理,总有同学会发现,在“某些时候”,layout_gravity这个属性不好使了,失去了它应有的作用
问题究竟出在哪里了呢?
当作为父layout的LinearLayout的属性为android:orientation="vertical" 的时候,android:layout_gravity="?"这里设为横向的时候才能生效。比如:left,right,center_horizontal等;
当作为父layout的LinearLayout的属性为android:orientation="horizental" 的时候,android:layout_gravity="?"这里设为纵向的时候才能生效。比如:top,bottom,center_vertical等;
有一个比较特殊的是center,不管是横向还是纵向的时候,它总有一个方向起作用, 因为LinearLayout他只可能有一个方向,
这nm的,确实让人蛋疼。其实也有点道理吧,就是LinearLayout横向的时候,如果有多个孩子,那就不知道把谁放最右了,
有两个解决方法吧,
(1)用RelativeLayout吧,这个算是费话吧 ,哈哈
(2)在LinearLayout中设置android:gravity这个从官方api的解释是怎么放置它的内容,LinearLayout的内容不就是他的孩子么,问题解决
相关文章推荐
- android layout_gravity失效的问题
- android中layout_gravity 和 gravity 的区别以及 失效原因
- android layout_gravity失效的问题
- android layout_gravity失效的问题
- RelativeLayout 在SDK 16(Android4.0)上 android:gravity="left" 属性失效解决
- android layout_gravity失效的问题
- android layout_gravity失效的问题
- android layout_gravity失效的问题
- android layout_gravity失效的问题
- 关于 android:layout_gravity="bottom" 或者 android:layout_gravity="right" 在LinearLayout失效问题
- android layout_gravity失效的问题
- android:gravity和android:layout_Gravity属性
- Android中gravity与layout_gravity的区别
- 【Android布局】在程序中设置android:gravity 和 android:layout_Gravity属性
- android:gravity / android:layout_Gravity,android:padding / android:layout_margin属性区分
- android:layout_gravity 和 android:gravity 的区别
- android:layout_gravity 和 android:gravity 的区别
- android:gravity与android:layout_gravity的区别
- android:layout_gravity 和 android:gravity 的区别
- android:layout_gravity和android:gravity属性的区别