布局归纳总结

来源:互联网 发布:怎样注册网络 编辑:程序博客网 时间:2024/05/16 17:04

1:在不停的适配过程中


总结的经验如下: 

1:我们可知  在linearlayout  线性布局里面  当我们需要设置  组件的位置的时候,

      1:我们需设置在外面嵌套一层  相对布局   这个时候   我们就可以设置位置了,

      2:随后   还可以借助 线性布局的特性    平均分配的特性  来设置组件的宽度或者高度。


2:同时在子适应的时候  我们可以  借助获得屏幕的宽度  或者高度  以及图片的高度 宽度  等等特性来设置组件的显         示区域。


3:




布局  设置随后在归纳。   一点点积累。



继续总结:

1:注意我们在 相对布局里面  我们可以设置 相关的许多属性


比如:

android:layout_centerHorizontal="true"


 android:layout_centerInParent="true"


android:layout_above="@id/center" 这个意思这个组件在所指的组件上面。


第一类:属性值为true或false
  android:layout_centerHrizontal 水平居中
  android:layout_centerVertical 垂直居中
  android:layout_centerInparent 相对于父元素完全居中
  android:layout_alignParentBottom 贴紧父元素的下边缘
  android:layout_alignParentLeft 贴紧父元素的左边缘
  android:layout_alignParentRight 贴紧父元素的右边缘
  android:layout_alignParentTop 贴紧父元素的上边缘
  android:layout_alignWithParentIfMissing 如果对应的兄弟元素找不到的话就以父元素做参照物


第二类:属性值必须为id的引用名“@id/id-name”
  android:layout_below 在某元素的下方
  android:layout_above 在某元素的的上方
  android:layout_toLeftOf 在某元素的左边
  android:layout_toRightOf 在某元素的右边

  android:layout_alignTop 本元素的上边缘和某元素的的上边缘对齐
  android:layout_alignLeft 本元素的左边缘和某元素的的左边缘对齐
  android:layout_alignBottom 本元素的下边缘和某元素的的下边缘对齐
  android:layout_alignRight 本元素的右边缘和某元素的的右边缘对齐

这个和那个是有区别的: 这个地方是边缘线是对齐的。


第三类:属性值为具体的像素值
  android:layout_marginBottom 离某元素底边缘的距离
  android:layout_marginLeft 离某元素左边缘的距离
  android:layout_marginRight 离某元素右边缘的距离
  android:layout_marginTop 离某元素上边缘的距离




注意    在自适应的时候   我们基本上使用的是 相对布局 外加线性布局   

这个时候  


找参照物的时候  我们要找正确的参照物,

记得啊!!!兄弟组件是在一个同一个布局里面的组件,如果是布局里一个组件参照另一个布局里的组件会出错的!!


所以  有的时候 我们会出现  不在同一个布局里面   不可以设置位置。


设置布局里面所有组件的对其方式:

android:gravity:设置容器内各个子组件的对齐方式

android:ignoreGravity:如果为哪个组件设置了这个属性的话,那么该组件不受gravity属性的影响



对齐上边界:android:layout_alignTop

对齐下边界:android:layout_alignBottom

对齐左边界:android:layout_alignLeft

对齐右边界:android:layout_alignRight


两个组件之间的那条边界对齐,  



注意 我们在设置 组建的位置的时候  上下左右  基本上都是以父组件为参照物,





    <Button 
实际例子讲解:

<Button 
        android:id="@+id/but1"
        android:layout_width="100dp"
        android:layout_height="40dp"
        />

        android:layout_width="50dp"
        android:layout_height="30dp"
        android:layout_below="@id/but1"
        android:layout_alignLeft="@id/but1"
        />




注意  上面的相关  位置设置的属性  我们在相对布局里面都可以给予设置。


注意  我们在线性布局里面不可以设置一个组件相对于另外一个组件的位置,这个时候 我们需要嵌套布局。


<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    >


    <LinearLayout 
        android:id="@+id/ll1"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        >
    
    <Button 
        android:id="@+id/but1"
        android:layout_width="100dp"
        android:layout_height="40dp"     
        />
   </LinearLayout>


    
    <LinearLayout 
        android:layout_below="@id/ll1"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:layout_alignRight="@id/ll1"
        >
    <Button 
       
        android:layout_width="50dp"
        android:layout_height="30dp"    
        />
    </LinearLayout>
</RelativeLayout>


再次一个例子:

这个例子就是  我们在做  线性布局的时候   如果我们不可以设置  组建的位置

我们就可以嵌套相对布局    这样就可以设置我们组建的位置   相对位置  同时我们在设置组件的位置的时候  

务必使用同一层的组件的id号  进行相关的设置。


在各种布局连  我们都可以设置各个组件与父组件的相对位置。











0 0
原创粉丝点击