zoukankan      html  css  js  c++  java
  • 第23讲 UI_布局 之相对布局

    第23讲 UI_布局 之相对布局

    2RelativeLayout(相对布局)

    RelativeLayout(相对布局)是指组件的位置总是相对兄弟组件、父容器来决定的(相对位置),如某个组件的左边右边,上边下边。相对布局是除线性布局之外最常用的,它相对于线性布局来说更加灵活,每个组件都可以指定与其它组件或父组件的位置,只是必须通过ID来进行指定。相对布局的子控件必须有唯一的id属性以使规则正确应用。

    【注意】:

    1.当心循环规则,循环规则发生在两个控件具有互相指向的规则时。如果你在布局设计中使用了循环规则,你将会得到以下错误信息:

    IllegalStateException: Circulardependencies cannot exist in a RelativeLayout(相对布局中不允许存在循环依赖)

    2.使用相对布局代替嵌套线性布局以改进程序性能和响应能力。


    1-1 组件之间的位置关系

    属性名称

    作用

    android:layout_above

    将组件放在指定ID组件的上方

    android:layout_below

    将组件放在指定ID组件的下方

    android:layout_below="@id/button1"  

    android:layout_toLeftOf

    将组件放在指定ID组件的左方

    android:layout_toRightOf

    将组件放在指定ID组件的右方

    1-2 组件对齐方式

    属性名称

    作用

    android:layout_alignBaseline

    将该组件放在指定ID组件进行中心线对齐

    android:layout_alignTop

    将该组件放在指定ID组件进行顶部对齐

    android:layout_alignBottom

    将该组件放在指定ID组件进行底部对齐

    android:layout_alignLeft

    将该组件放在指定ID组件进行左边缘对齐

    android:layout_alignRight

    将该组件放在指定ID组件进行右边缘对齐,

    android:layout_alignRight="@id/button2" 

    1-3 当前组件与父组件的对齐方式

    属性名称

    作用

    android:layout_alignParentTop

    该组件与父组件进行顶部对齐

    android:layout_alignParentBottom

    该组件与父组件进行底部对齐

    android:layout_alignParentLeft

    该组件与父组件进行左边缘对齐

    android:layout_alignParentRight

    该组件与父组件进行右边缘对齐,

    android:layout_alignParentRight="true" 

    android:layout_alignWithParentIfMissing

    参照控件不存在或不可见时参照父控件

    1-4 组件放置的位置

    属性名称

    属性名称

    android:layout_centerHorizontal

    将该组件放置在水平方向中央的位置

    android:layout_centerHorizontal="true" 

    android:layout_centerVertical

    将该组件放置在垂直方向的中央的位置

    android:layout_centerInParent

    将该组件放置在父组件的水平中央及垂直中央的位置

    1-5

    android:layout_marginLeft

    当前控件左侧的留白

    android:layout_marginRight

    当前控件右侧的留白

    android:layout_marginTop

    当前控件上方的留白

    android:layout_marginBottom

    当前控件下方的留白

     


  • 相关阅读:
    根据条件把一个字符串拆分成几个字符串
    【SQLServer】SQL Server 2000的分页方法(SQL篇)
    【C#】NHibernate下实现SQL2000分页(SQL篇)
    【Oracle】仿Oracle Sequence的自定义年份Sequence(适合任何数据库)
    【Oracle】仿Oracle Sequence的自定义年份Sequence(适合任何数据库)(续)
    【C#】NHibernate下为SQL Server添加随机排序
    【LoadRunner】LoadRunner 9.5回放Windows Socket时CPU 100%
    【CSS】CSS Cookbook例子:创建水平导航菜单
    【CSS】CSS Cookbook例子:创建文字导航菜单和翻转特效
    【Flex】实现模块顺序执行
  • 原文地址:https://www.cnblogs.com/anyuan9/p/6171599.html
Copyright © 2011-2022 走看看