android:gravity 和 android:layout_Gravity属性

本文详细解析了Android中android:gravity和android:layout_gravity属性的作用。通过实例展示了如何使用这两个属性来调整视图内的内容对齐及视图本身在容器中的位置。适合初学者快速掌握Android布局的基本技巧。

android:gravity用于设置View中内容相对于View组件的对齐方式,而android:layout_gravity用于设置View组件相对于Container的对齐方式。

这样设置会显示如下效果:

        <RelativeLayout
            android:id="@+id/relativeLayout1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" 
            android:layout_below="@id/datetime"
            android:layout_marginLeft="5dip"
            android:layout_toRightOf="@id/icon"
            android:background="@drawable/balloon_l_selector"
            android:clickable="true"
            android:minHeight="44.0dip" >


如果添加android:layout_gravity="bottom",会显示如下:

        <RelativeLayout
            android:id="@+id/relativeLayout1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="bottom"
            android:layout_below="@id/datetime"
            android:layout_marginLeft="5dip"
            android:layout_toRightOf="@id/icon"
            android:background="@drawable/balloon_l_selector"
            android:clickable="true"
            android:minHeight="44.0dip" >


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

结合http://blog.youkuaiyun.com/feng88724/article/details/6333809的经验,略作摘录。


<LinearLayout  
   xmlns:android="http://schemas.android.com/apk/res/android"  
    android:orientation="vertical"  
    android:layout_width="fill_parent"  
    android:layout_height="fill_parent">  
    <EditText  
        android:layout_width="wrap_content"  
        android:gravity="center"  
        android:layout_height="wrap_content"  
        android:text="one"  
        android:layout_gravity="right"/>  
</LinearLayout> 


<?xml version="1.0" encoding="utf-8"?> <LinearLayout android:id="@+id/MainPage" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <RelativeLayout android:id="@+id/SerialContent" android:layout_width="match_parent" android:layout_height="50dp"> <TextView android:id="@+id/Serial" android:layout_width="160dp" android:layout_height="match_parent" android:background="#CECECE" android:gravity="center" android:text="串口号:" /> <TextView android:id="@+id/SerialName" android:layout_width="100dp" android:layout_height="match_parent" android:layout_toRightOf="@+id/Serial" android:gravity="center" android:text="未连接" android:textColor="#888888" android:background="@drawable/solid_shape"/> <Button android:id="@+id/OpenSerial" android:layout_width="120dp" android:layout_height="match_parent" android:layout_margin="2dp" android:layout_toRightOf="@id/SerialName" android:text="打开串口" /> <Button android:id="@+id/QuitSoftware" android:layout_width="140dp" android:layout_height="match_parent" android:layout_alignParentRight="true" android:layout_margin="2dp" android:text="退出软件" /> </RelativeLayout> <FrameLayout android:id="@+id/previewContent" android:layout_width="569dp" android:layout_height="320dp" android:visibility="gone"> <androidx.camera.view.PreviewView android:id="@+id/preview" android:layout_width="match_parent" android:layout_height="match_parent" /> </FrameLayout> <RelativeLayout android:id="@+id/handleContent" android:layout_width="match_parent" android:layout_height="320dp" android:visibility="visible"> <TextView android:id="@+id/handle" android:layout_width="160dp" android:layout_height="match_parent" android:background="#CECECE" android:gravity="center" android:text="手柄" /> <LinearLayout android:id="@+id/RightContent" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_toRightOf="@+id/handle" android:orientation="vertical"> <RelativeLayout android:id="@+id/content1" android:layout_width="match_parent" android:layout_height="40dp" android:layout_toRightOf="@+id/handle"> <TextView android:id="@+id/ForkSprings" android:layout_width="100dp" android:layout_height="match_parent" android:background="#CECECE" android:gravity="center" android:text="叉簧:" /> <TextView android:id="@+id/ForkSpringsStatus" android:layout_width="80dp" android:layout_height="match_parent" android:layout_toRightOf="@+id/ForkSprings" android:gravity="center" android:text="未连接" android:textColor="#888888" android:background="@drawable/solid_shape"/> <Button android:id="@+id/ChangeDial" android:layout_width="140dp" android:layout_height="match_parent" android:layout_alignParentRight="true" android:text="带拨号盘版" /> </RelativeLayout> <RelativeLayout android:id="@+id/content2" android:layout_width="match_parent" android:layout_height="40dp"> <Button android:id="@+id/btnA" android:layout_width="100dp" android:layout_height="match_parent" android:text="按钮A" /> <TextView android:id="@+id/ShowBtnAStatus" android:layout_width="80dp" android:layout_height="match_parent" android:layout_toRightOf="@id/btnA" android:gravity="center" android:text="r140" /> <TextView android:id="@+id/AFlashing" android:layout_width="40dp" android:layout_height="match_parent" android:layout_marginRight="10dp" android:layout_toRightOf="@id/ShowBtnAStatus" android:background="@drawable/lamp_shape" android:gravity="center" android:text="A" /> <Button android:id="@+id/AStart" android:layout_width="100dp" android:layout_height="match_parent" android:layout_toRightOf="@+id/AFlashing" android:text="A开灯" /> <Button android:id="@+id/AClose" android:layout_width="100dp" android:layout_height="match_parent" android:layout_toRightOf="@+id/AStart" android:text="A关灯" /> </RelativeLayout> <RelativeLayout android:id="@+id/content3" android:layout_width="match_parent" android:layout_height="40dp"> <Button android:id="@+id/btnB" android:layout_width="100dp" android:layout_height="match_parent" android:text="按钮B" /> <TextView android:id="@+id/ShowBtnBStatus" android:layout_width="80dp" android:layout_height="match_parent" android:layout_toRightOf="@id/btnB" android:gravity="center" android:text="r130" /> <TextView android:id="@+id/BFlashing" android:layout_width="40dp" android:layout_height="match_parent" android:layout_marginRight="10dp" android:layout_toRightOf="@id/ShowBtnBStatus" android:background="@drawable/lamp_shape" android:gravity="center" android:text="B" /> <Button android:id="@+id/BStart" android:layout_width="100dp" android:layout_height="match_parent" android:layout_toRightOf="@+id/BFlashing" android:text="B开灯" /> <Button android:id="@+id/BClose" android:layout_width="100dp" android:layout_height="match_parent" android:layout_toRightOf="@+id/BStart" android:text="B关灯" /> </RelativeLayout> <LinearLayout android:id="@+id/DialContent" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:visibility="visible"> <TextView android:id="@+id/display" android:layout_width="match_parent" android:layout_height="40dp" android:background="#E8E8E8" android:gravity="center" android:hint="请输入" /> <GridLayout android:id="@+id/keyboard" android:layout_width="match_parent" android:layout_height="match_parent" android:columnCount="3" android:rowCount="4"> <Button android:layout_width="0dp" android:layout_height="40dp" android:layout_columnWeight="1" android:text="1" /> <Button android:layout_width="0dp" android:layout_height="40dp" android:layout_columnWeight="1" android:text="2" /> <Button android:layout_width="0dp" android:layout_height="40dp" android:layout_columnWeight="1" android:text="3" /> <Button android:layout_width="0dp" android:layout_height="40dp" android:layout_columnWeight="1" android:text="4" /> <Button android:layout_width="0dp" android:layout_height="40dp" android:layout_columnWeight="1" android:text="5" /> <Button android:layout_width="0dp" android:layout_height="40dp" android:layout_columnWeight="1" android:text="6" /> <Button android:layout_width="0dp" android:layout_height="40dp" android:layout_columnWeight="1" android:text="7" /> <Button android:layout_width="0dp" android:layout_height="40dp" android:layout_columnWeight="1" android:text="8" /> <Button android:layout_width="0dp" android:layout_height="40dp" android:layout_columnWeight="1" android:text="9" /> <Button android:layout_width="0dp" android:layout_height="40dp" android:layout_columnWeight="1" android:text="DEL" /> <Button android:layout_width="0dp" android:layout_height="40dp" android:layout_columnWeight="1" android:text="0" /> <Button android:layout_width="0dp" android:layout_height="40dp" android:layout_columnWeight="1" android:text="OK" /> </GridLayout> </LinearLayout> <RelativeLayout android:id="@+id/NoDialContent" android:layout_width="match_parent" android:layout_height="match_parent" android:visibility="gone"> <Button android:id="@+id/key1" android:layout_width="100dp" android:layout_height="40dp" android:text="KEY1" /> <TextView android:id="@+id/ShowKey1" android:layout_width="80dp" android:layout_height="40dp" android:layout_toRightOf="@+id/key1" android:gravity="center" android:text="r150" /> <TextView android:id="@+id/key1Flashing" android:layout_width="40dp" android:layout_height="40dp" android:layout_marginRight="10dp" android:layout_toRightOf="@id/ShowKey1" android:background="@drawable/lamp_shape" android:gravity="center" android:text="key1" /> <Button android:id="@+id/key1Start" android:layout_width="100dp" android:layout_height="40dp" android:layout_toRightOf="@+id/key1Flashing" android:text="开灯" /> <Button android:id="@+id/key1Close" android:layout_width="100dp" android:layout_height="40dp" android:layout_toRightOf="@+id/key1Start" android:text="关灯" /> <Button android:id="@+id/key2" android:layout_width="100dp" android:layout_height="40dp" android:layout_below="@+id/key1" android:text="KEY2" /> <TextView android:id="@+id/ShowKey2" android:layout_width="80dp" android:layout_height="40dp" android:layout_below="@+id/ShowKey1" android:layout_toRightOf="@+id/key2" android:gravity="center" android:text="r160" /> <TextView android:id="@+id/key2Flashing" android:layout_width="40dp" android:layout_height="40dp" android:layout_below="@+id/key1Flashing" android:layout_marginRight="10dp" android:layout_toRightOf="@id/ShowKey2" android:background="@drawable/lamp_shape" android:gravity="center" android:text="key2" /> <Button android:id="@+id/key2Start" android:layout_width="100dp" android:layout_height="40dp" android:layout_below="@+id/key1Start" android:layout_toRightOf="@+id/key2Flashing" android:text="开灯" /> <Button android:id="@+id/key2Close" android:layout_width="100dp" android:layout_height="40dp" android:layout_below="@+id/key1Close" android:layout_toRightOf="@+id/key2Start" android:text="关灯" /> <Button android:id="@+id/key3" android:layout_width="100dp" android:layout_height="40dp" android:layout_below="@+id/key2" android:text="KEY3" /> <TextView android:id="@+id/ShowKey3" android:layout_width="80dp" android:layout_height="40dp" android:layout_below="@+id/ShowKey2" android:layout_toRightOf="@+id/key3" android:gravity="center" android:text="r170" /> <TextView android:id="@+id/key3Flashing" android:layout_width="40dp" android:layout_height="40dp" android:layout_below="@+id/key2Flashing" android:layout_marginRight="10dp" android:layout_toRightOf="@id/ShowKey3" android:background="@drawable/lamp_shape" android:gravity="center" android:text="key3" /> <Button android:id="@+id/key3Start" android:layout_width="100dp" android:layout_height="40dp" android:layout_below="@+id/key2Start" android:layout_toRightOf="@+id/key3Flashing" android:text="开灯" /> <Button android:id="@+id/key3Close" android:layout_width="100dp" android:layout_height="40dp" android:layout_below="@+id/key2Close" android:layout_toRightOf="@+id/key3Start" android:text="关灯" /> <Button android:id="@+id/key4" android:layout_width="100dp" android:layout_height="40dp" android:layout_below="@+id/key3" android:text="KEY4" /> <TextView android:id="@+id/ShowKey4" android:layout_width="80dp" android:layout_height="40dp" android:layout_below="@+id/ShowKey3" android:layout_toRightOf="@+id/key4" android:gravity="center" android:text="r180" /> <TextView android:id="@+id/key4Flashing" android:layout_width="40dp" android:layout_height="40dp" android:layout_below="@+id/key3Flashing" android:layout_marginRight="10dp" android:layout_toRightOf="@id/ShowKey4" android:background="@drawable/lamp_shape" android:gravity="center" android:text="key4" /> <Button android:id="@+id/key4Start" android:layout_width="100dp" android:layout_height="40dp" android:layout_below="@+id/key3Start" android:layout_toRightOf="@+id/key4Flashing" android:text="开灯" /> <Button android:id="@+id/key4Close" android:layout_width="100dp" android:layout_height="40dp" android:layout_below="@+id/key3Close" android:layout_toRightOf="@+id/key4Start" android:text="关灯" /> <Button android:id="@+id/key5" android:layout_width="100dp" android:layout_height="40dp" android:layout_below="@+id/key4" android:text="KEY5" /> <TextView android:id="@+id/ShowKey5" android:layout_width="80dp" android:layout_height="40dp" android:layout_below="@+id/ShowKey4" android:layout_toRightOf="@+id/key5" android:gravity="center" android:text="r190" /> <TextView android:id="@+id/key5Flashing" android:layout_width="40dp" android:layout_height="40dp" android:layout_below="@+id/key4Flashing" android:layout_marginRight="10dp" android:layout_toRightOf="@id/ShowKey5" android:background="@drawable/lamp_shape" android:gravity="center" android:text="key5" /> <Button android:id="@+id/key5Start" android:layout_width="100dp" android:layout_height="40dp" android:layout_below="@+id/key4Start" android:layout_toRightOf="@+id/key5Flashing" android:text="开灯" /> <Button android:id="@+id/key5Close" android:layout_width="100dp" android:layout_height="40dp" android:layout_below="@+id/key4Close" android:layout_toRightOf="@+id/key5Start" android:text="关灯" /> </RelativeLayout> </LinearLayout> </RelativeLayout> <RelativeLayout android:id="@+id/VoiceContent" android:layout_width="match_parent" android:layout_height="50dp"> <TextView android:id="@+id/voice" android:layout_width="160dp" android:layout_height="match_parent" android:background="#CECECE" android:gravity="center" android:text="录音" /> <Button android:id="@+id/RecordingVoice" android:layout_width="120dp" android:layout_height="match_parent" android:layout_margin="2dp" android:layout_toRightOf="@+id/voice" android:text="开始录音" /> <TextView android:id="@+id/ShowVoiceData" android:layout_width="100dp" android:layout_height="match_parent" android:textSize="10dp" android:gravity="center" android:layout_toRightOf="@+id/RecordingVoice" android:background="@drawable/solid_shape"/> <Button android:id="@+id/PlayVoice" android:layout_width="120dp" android:layout_height="match_parent" android:layout_margin="2dp" android:text="播放语音" android:layout_toRightOf="@id/ShowVoiceData"/> <Button android:id="@+id/DeleteAudioAndView" android:layout_width="80dp" android:layout_height="match_parent" android:layout_margin="2dp" android:text="删除" android:layout_alignParentRight="true"/> </RelativeLayout> <RelativeLayout android:id="@+id/CameraContent" android:layout_width="match_parent" android:layout_height="50dp"> <TextView android:id="@+id/camera" android:layout_width="160dp" android:layout_height="match_parent" android:background="#CECECE" android:gravity="center" android:text="摄像头" /> <Button android:id="@+id/OpenAndCloseCamera" android:layout_width="120dp" android:layout_height="match_parent" android:layout_margin="2dp" android:layout_toRightOf="@+id/camera" android:text="打开摄像头" /> <Button android:id="@+id/photograph" android:layout_width="100dp" android:layout_height="match_parent" android:layout_margin="2dp" android:layout_toRightOf="@id/OpenAndCloseCamera" android:text="拍照" /> <TextView android:id="@+id/PhotographData" android:layout_width="100dp" android:layout_height="match_parent" android:textSize="10dp" android:gravity="center" android:maxLines="3" android:ellipsize="end" android:layout_toRightOf="@+id/photograph" android:background="@drawable/solid_shape"/> <Button android:id="@+id/RecordingView" android:layout_width="120dp" android:layout_height="match_parent" android:layout_margin="2dp" android:layout_toRightOf="@+id/PhotographData" android:text="录制视频" /> <TextView android:id="@+id/RecordingViewData" android:layout_width="100dp" android:layout_height="match_parent" android:textSize="10dp" android:gravity="center" android:maxLines="3" android:ellipsize="end" android:layout_toRightOf="@+id/RecordingView" android:background="@drawable/solid_shape"/> <Button android:id="@+id/DeleteView" android:layout_width="80dp" android:layout_height="match_parent" android:layout_margin="2dp" android:layout_alignParentRight="true" android:text="删除" /> </RelativeLayout> <LinearLayout android:id="@+id/ScreenTestContent" android:layout_width="match_parent" android:layout_height="50dp"> <TextView android:id="@+id/ScreenTest" android:layout_width="160dp" android:layout_height="match_parent" android:background="#CECECE" android:gravity="center" android:text="屏幕测试" /> <Button android:id="@+id/ScreenCheck" android:layout_width="120dp" android:layout_height="match_parent" android:text="屏幕检测" android:layout_margin="2dp"/> <TextView android:id="@+id/TouchScreenCheck" android:layout_width="160dp" android:layout_height="match_parent" android:background="#CECECE" android:gravity="center" android:text="触摸屏检测" /> <Button android:id="@+id/ScribingTest" android:layout_width="120dp" android:layout_height="match_parent" android:layout_margin="2dp" android:text="划线测试" /> <Button android:id="@+id/SinglePointTest" android:layout_width="120dp" android:layout_height="match_parent" android:layout_margin="2dp" android:text="单点测试" /> </LinearLayout> <LinearLayout android:id="@+id/NetPortContent" android:layout_width="match_parent" android:layout_height="50dp"> <TextView android:id="@+id/NetPort" android:layout_width="160dp" android:layout_height="match_parent" android:background="#CECECE" android:gravity="center" android:text="网口" /> <TextView android:id="@+id/NetPortData" android:layout_width="120dp" android:layout_height="match_parent" android:layout_margin="2dp"/> <TextView android:id="@+id/ping" android:layout_width="160dp" android:layout_height="match_parent" android:text="ping" android:gravity="center" android:background="#CECECE" /> <TextView android:id="@+id/pingData" android:layout_width="120dp" android:layout_height="match_parent"/> </LinearLayout> <LinearLayout android:id="@+id/USBContent" android:layout_width="match_parent" android:layout_height="50dp"> <TextView android:id="@+id/USB" android:layout_width="160dp" android:layout_height="match_parent" android:background="#CECECE" android:gravity="center" android:text="USB接口" /> <TextView android:id="@+id/WriteTextData" android:layout_width="80dp" android:layout_height="match_parent" /> <Button android:id="@+id/WriteText" android:layout_width="120dp" android:layout_height="match_parent" android:layout_margin="2dp" android:text="写入文本" /> <TextView android:id="@+id/OpenTextData" android:layout_width="80dp" android:layout_height="match_parent" /> <Button android:id="@+id/OpenText" android:layout_width="120dp" android:layout_height="match_parent" android:layout_margin="2dp" android:text="打开文本" /> <Button android:id="@+id/DeleteText" android:layout_width="120dp" android:layout_height="match_parent" android:layout_margin="2dp" android:text="删除文本" /> </LinearLayout> </LinearLayout> 在以上布局文件中,让以下部分在里面居中 <androidx.camera.view.PreviewView android:id="@+id/preview" android:layout_width="match_parent" android:layout_height="match_parent" /> </FrameLayout>居中
最新发布
08-02
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值