android布局介绍

本文总结android布局三点:1.margin和padding的区别。 2.android:gravity 和 android:layout_gravity区别。3.使用marginRight 和 paddingRight的注意点。

--------------------------------------------------------------------------------------------------

通过四个简单例子,使得理解容易、准确。

1.android:layout_marginLeft="20dp"  表示:按钮相对于父容器左边界 20dp

2.android:paddingLeft = "20dp"  表示:按钮中的文字相对于按钮左边界 20dp

3.android:gravity="right"   表示:按钮文字相对于按钮是右对齐

4.android:layout_gravity="right" 表示按钮相对于父容器是右对齐         


----------------------------------------------------------------------------------------------------

注意点:

1.android:layout_marginRight = "20dp" , 必须加上 andoid:layout_gravity="right" ,才能实现。因为只写android:layout_marginRight = "20dp"这一句,表示该按钮距离父容器右边界不小于20dp,只有加上该按钮相对于父容器右对齐(即andoid:layout_gravity="right"),才能实现该按钮相对于父容器右边界20dp.

2.同理,android:paddingRight = "20dp" , 也必须加上 android:gravity = "right"才能实现。因为只写android:paddingRight="20dp"这一句,表示按钮上的文字距离按钮右边界不小于20dp,只有加上按钮中的文字相对于按钮是右对齐(即android:gravity="right"),才能实现按钮中的文字相对于按钮右边界20dp.

-----------------------------------------------------------------------------------------------------

两幅图说明margin,android:gravity , android:layout_gravity

android布局介绍


android布局介绍

------------------------------------------------------------------------------------------------------------------------------------------

通过实际案例来说明:

程序运行结构图如下

android布局介绍


页面代码:/res/layout/actvity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >

    <!--1 按钮默认位置,按钮内的字的默认位置 -->
    <Button
        android:id="@+id/button0"       
        android:layout_width="wrap_content"
    	android:layout_height="wrap_content"    	
    	android:text="默认按钮位置"
        ></Button>
    
    <!--2 android:layout_marginLeft="20dp"  按钮相对于父容器左边框 20dp  -->    
    <Button
        android:id="@+id/button1"
        android:layout_marginLeft="20dp"        
        android:layout_width="wrap_content"
    	android:layout_height="wrap_content"    	
    	android:text="按钮android:layoutmarginLeft"
        ></Button>
    
     <!--3 android:layout_margimRight="20dp"  按钮相对于父容器右边框 20dp , 必须加  android:layout_gravity="right",表示右对齐方式计算-->
     <Button
        android:id="@+id/button2"        
        android:layout_marginRight="20dp"
        android:layout_gravity="right"   
        android:layout_width="fill_parent"
    	android:layout_height="wrap_content"    	
    	android:text="按钮android:layoutmarginRight"
        ></Button>
     
     <!--4 android:paddingLeft="20dp" 按钮上的字相对于按钮左边框 20dp -->
      <Button
        android:id="@+id/button3"
        android:paddingLeft="20dp"
        android:layout_width="fill_parent"
    	android:layout_height="wrap_content"    	
    	android:text="按钮android:paddingLeft1"
        ></Button>
      
      <Button
        android:id="@+id/button31"
        android:paddingLeft="40dp"
        android:layout_width="fill_parent"
    	android:layout_height="wrap_content"    	
    	android:text="按钮android:paddingLeft2"
        ></Button>
     
       <!--5 android:paddingRight="20dp" 按钮上的字相对于按钮右边框 20dp -->      
       <Button
        android:id="@+id/button4"
        android:paddingRight="20dp"
        android:gravity="right"
        android:layout_width="fill_parent"
    	android:layout_height="wrap_content"    	
    	android:text="按钮android:paddingRight1"
        ></Button>
        <Button
        android:id="@+id/button41"
        android:paddingRight="40dp"
        android:gravity="right"
        android:layout_width="fill_parent"
    	android:layout_height="wrap_content"    	
    	android:text="按钮android:paddingRight2"
        ></Button>
       
        <!--6 anroid:gravity="right" 按钮上的字相对于按钮边框右对齐 -->
        <Button
        android:id="@+id/button5"       
        android:gravity="right"
        android:layout_width="fill_parent"
    	android:layout_height="wrap_content"    	
    	android:text="按钮android:gravity"
        ></Button>
        
        <!--7 android:layout_gravity="right" 按钮相对父容器右对齐  -->
         <Button
        android:id="@+id/button6"       
        android:layout_gravity="right"
        android:layout_width="wrap_content"
    	android:layout_height="wrap_content"    	
    	android:text="按钮android:layout_gravity"
        ></Button>
     

</LinearLayout>






android布局介绍,布布扣,bubuko.com

android布局介绍

上一篇:Android 触摸事件传递机制


下一篇:android错误之OnTouchListener只能监听到ACTION_DOWN-----onTouchListener的返回值问题