zoukankan      html  css  js  c++  java
  • android脚步--Relativelayout设置

    引自http://blog.csdn.net/lamp_zy/article/details/8035161

    http://my.oschina.net/honeyming/blog/130761

    以下大部为用在RelativeLayout中的一些参数:

    android:layout_above 将该控件的底部至于给定ID的控件之上,但不会左对齐,默认置于父窗口最左边,会覆盖最左边的控件

    android:layout_below 将该控件的顶部至于给定ID的控件之下,但不会左对齐,默认置于父窗口最左边,会覆盖最左边的控件

    android:layout_toLeftOf 将该控件的右边缘和给定ID的控件的左边缘对齐,默认置于父窗口最上面,会覆盖最上面的控件

    android:layout_toRightOf 将该控件的左边缘和给定ID的控件的右边缘对齐,默认置于父窗口最上面,会覆盖最上面的控件

    android:alignParentBottom 如果该值为true,则将该控件的底部和父控件的底部对齐,默认置于父窗口最左下,会覆盖最左下的控件

    android:layout_alignParentLeft 如果该值为true,则将该控件的左边与父控件的左边对齐,默认置于父窗口最左上,会覆盖最左上的控件

    android:layout_alignParentRight 如果该值为true,则将该控件的右边与父控件的右边对齐,默认置于父窗口最右上,会覆盖最右上的控件

    android:layout_alignParentTop 如果该值为true,则将控件的顶部与父控件的顶部对齐,默认置于父窗口最左上,会覆盖最左上的控件

    android:layout_alignBaseline该控件的baseline和给定ID的控件的baseline对齐,并置于父窗口最左边,会覆盖最左边的控件

    android:layout_alignBottom 将该控件的底部边缘与给定ID控件的底部边缘对齐,并置于父窗口最左边,会覆盖最左边的控件

    android:layout_alignLeft 将该控件的左边缘与给定ID控件的左边缘对齐,并置于父窗口最上边,会覆盖最上边的控件

    android:layout_alignRight 将该控件的右边缘与给定ID控件的右边缘对齐,并置于父窗口最上边,会覆盖最上边的控件

    android:layout_alignTop 将给定控件的顶部边缘与给定ID控件的顶部对齐,并置于父窗口最左边,会覆盖最左边的控件

    1、 相对布局的基本概念 
    一个控件的位置它决定于它和其他控件的关系,好处:比较灵活;缺点:掌握比较复杂。 
    2、 相对布局常用属性介绍 
    这里将这些属性分成4个组,便于理解和记忆。 
    a)、以下4个属性设置控件与之间的关系和位置 



    但是上面4个属性并没有设置各个控件之间是否对齐。 
    示例1:将控件A放置在控件B的上面,则使用android:layout_above属性,控件布局的效果可以有以下这么两种情况。 
    1、 控件A与控件B对齐,并且控件A是在控件B的上面。 
    2、 控件A没有与控件B对齐,但是控件A又确实是在控件B的上面。 

     



    b)、以下5个属性,设置的是控件与控件之间对齐的方式(是顶部、底部还是左、右对齐)。 



    示例2:在示例1的基础上,设置控件A放置在控件B的上面,使用android:layout_above属性,并且控件A的右边边缘与控件B的右边边缘对齐,使用android:layout_alignRight属性。 



    c)、以下4个属性设置控件与父控件之间对齐的方式(是顶部、底部还是左、右对齐)。 



    d)、以下4个属性设置控件的方向。 



    可以通过组合这些属性来实现各种各样的布局。 
    注:以上属性和其他更多属性的作用都能在android的帮助文档中找到; 

    3.gravity和layout_gravity

    android:gravity  
    android:gravity属性是对该view 内容的限定.比如一个button 上面的text.  你可以设置该text 在view的靠左,靠右等位置.以button为例,android:gravity="right"则button上面的文字靠右 

    android:layout_gravity 
    android:layout_gravity是用来设置该view相对与起父view 的位置.比如一个button 在linearlayout里,你想把该button放在靠左、靠右等位置就可以通过该属性设置.以button为例,android:layout_gravity="right"则button靠右 



    示例3:假如要实现一个如下图这样布局的程序 


    如果这样的布局要使用LinearLayout的话会比较麻烦和复杂, 
    1、 首先需要一个垂直布局方向的LinearLayout,包裹所有的控件; 
    2、 然后在第一个LinearLayout中嵌套一个垂直方向的LinearLayout,放在上部分,在这个LinearLayout中放入一个TextView和EditText; 
    3、 最后还是在第一个LinearLayout中嵌套一个水平方向的LinearLayout,放在第一个LinearLayout的下部分,在这个LinearLayout中放入两个Button,并且还得让它们居右。 
    可参考下图: 

     
    如果使用RelativeLayout会要简单很多,下面为main.xml的代码。 

    1.<?xml version="1.0" encoding="utf-8"?>  
    2.  
    3.<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
    4.    android:layout_width="fill_parent"  
    5.    android:layout_height="wrap_content"  
    6.    android:padding="10px"  
    7.    >  
    8.    <TextView  
    9.        android:id="@+id/lable"  
    10.        android:text="Type here:"  
    11.        android:layout_width="fill_parent"  
    12.        android:layout_height="wrap_content"  
    13.    />  
    14.      
    15.    <EditText  
    16.        android:id="@+id/entry"  
    17.        android:layout_width="fill_parent"  
    18.        android:layout_height="wrap_content"  
    19.        android:background="@android:drawable/editbox_background"  
    20.        android:layout_below="@id/lable"  
    21.    />  
    22.      
    23.    <Button  
    24.        android:id="@+id/ok"  
    25.        android:layout_width="wrap_content"  
    26.        android:layout_height="wrap_content"  
    27.        android:text="OK"  
    28.        android:layout_below="@id/entry"  
    29.        android:layout_marginLeft="10px"  
    30.        android:layout_alignParentRight="true"  
    31.    />  
    32.      
    33.    <Button  
    34.        android:id="@+id/cancel"  
    35.        android:layout_width="wrap_content"  
    36.        android:layout_height="wrap_content"  
    37.        android:layout_toLeftOf="@id/ok"  
    38.        android:layout_alignTop="@id/ok"  
    39.        android:text="Cancel"  
    40.    />  
    41.</RelativeLayout>  
  • 相关阅读:
    dir 函数
    模块的 __name__
    from..import 语句
    pass
    可变参数
    python 中的一点新知识
    Numpy中的一点小知识
    使用ipython %matplotlib inline
    numpy.random.rand
    Python:numpy中shape和reshape的用法
  • 原文地址:https://www.cnblogs.com/Anita9002/p/4159277.html
Copyright © 2011-2022 走看看