• Android layout_gravity失效的问题


    相信对于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的内容不就是他的孩子么,问题解决

  • 相关阅读:
    JS生成Guid
    MVC——分页
    MVC入门——删除页
    MVC入门——编辑页
    MVC入门——详细页
    MVC入门——列表页
    MVC入门——增
    pandas使用
    简单线性回归预测实现
    flask 自定义url转换器
  • 原文地址:https://www.cnblogs.com/zhujiabin/p/4281814.html
Copyright © 2020-2023  润新知