软件编程
位置:首页>> 软件编程>> Android编程>> Android应用借助LinearLayout实现垂直水平居中布局

Android应用借助LinearLayout实现垂直水平居中布局

作者:andie_guo  发布时间:2023-02-05 01:46:45 

标签:Android,LinearLayout

首先说的是LinearLayout布局下的居中一般是这样的:
(注意:android:layout_width="fill_parent" android:layout_height="fill_parent" 属性中,若水平居中,至少在宽度上占全屏;若垂直居中,则在高度上占全屏)


<LinearLayout
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 android:gravity="center|center_horizontal|center_vertical" >
 // 上面gravity属性的参数:center为居中,center_horizontal为水平居中,center_vertical为垂直居中
 <Button  
   android:id="@+id/Binding_button"  
   android:layout_width="wrap_content"  
   android:layout_height="wrap_content"  
   android:text="关联新账户" />
</LinearLayout>  

要实现垂直水平居中,几个基本参数值得注意:
1、android:orientation="vertical"表示该布局下的元素垂直排列;
2、android:layout_gravity="center_horizontal"表示该布局在父布局里水平居中,此时其父布局必须拥有android:orientation="vertical"属性;
3、android:layout_gravity="center_vertical"表示该布局在父布局里垂直居中,此时其父布局必须应设置成android:orientation="horizontal"属性(默认为该属性),且其父布局的高度应设置为android:layout_height="fill_parent"属性;
4、android:gravity="center_horizontal"表示该布局下的元素水平居中;

线性布局垂直水平居中布局文件实例:


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

<LinearLayout
   android:layout_width="wrap_content"
   android:layout_height="fill_parent"
   android:layout_gravity="center_horizontal"
   >

<LinearLayout
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:orientation="vertical"
     android:layout_gravity="center_vertical"
     >

<LinearLayout
       android:layout_width="fill_parent"
       android:layout_height="wrap_content" >

<TextView
         android:layout_width="100dp"
         android:layout_height="wrap_content"
         android:gravity="right"
         android:text="用户名" />

<EditText
         android:layout_width="300dp"
         android:layout_height="wrap_content" />
     </LinearLayout>

<LinearLayout
       android:layout_width="fill_parent"
       android:layout_height="wrap_content" >

<TextView
         android:layout_width="100dp"
         android:layout_height="wrap_content"
         android:gravity="right"
         android:text="Email" />

<EditText
         android:layout_width="300dp"
         android:layout_height="wrap_content" />
     </LinearLayout>
   </LinearLayout>
 </LinearLayout>
</LinearLayout>
0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com