温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Android的四个基本布局

发布时间:2020-08-11 12:23:13 来源:ITPUB博客 阅读:190 作者:山有木xi 栏目:移动开发

在Android中有四种基本布局,可以放置很多控件的容器,按照一定的个一律调整控件的位置,从而编写出精美的界面

1)线性布局:LinearLayout

让我们来看一段代码

<LinearLayout xmlns:android="http://schemas,android.com/apk/res/android">android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
//android:layout_gravity="top"
android:text="Button1"/>
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
//android:layout_gravity="center_vertical"
android:text="Button2"/>
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
//android:layout_gravity="bottom"
android:text="Button3"/>
<LinearLayout/>

其中 orientation:vertical就是线性布局中的垂直布局

将其改为 orientation:horizantal就是线性布局中的水平布局

注释符后的android:l ayout_gravity似乎看起来和android:gravity很像,实际上 android:gravity是用来控制文字的, 而 android:l ayout_gravity是用来控制控件的, 需要注意的是 android:l ayout_gravity只能在垂直布局上用到,因为水平布局中的长度是不固定的,每添加一个就加长 还有一个也很重要的属性:android:layout_weight,这是用来比例控制控件大小 2)相对布局:RelativeLayout

<RelativeLayout xmlns:android="http://schemas,android.com/apk/res/android">
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="Button1"/>
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:text="Button2"/>
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="Button3"/>
<Button
android:id="@+id/button4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true"
android:text="Button4"/>
<Button
android:id="@+id/button5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentBottom="true"
android:text="Button5"/>
<RelativeLayout/>

这里用到的是layout_alignParentTop,layout_alignParentBottm,layout_alignParentLeft,layout_alignParentRight和layout_centerInParent,他们的意思显而易见

除此以外还有,layout_above,layout_below,layout_toLeftof,layout_toRightof

而layout_alignLeft,layout_alignRight,layout_alignTop,layout_alignBottom,则是利用边缘对齐的方式控制控件 3)帧布局:FrameLayout 它相比于其他两个布局就简单多了,它没有方便的定位方式,所有的控件都会显示在左上角 4)百分比布局:PercentFrameLayout以及PercentRelativelayout 其中有:app:layout_heightPercent, app:layout_widthPercent 而在实际编程中,会发现一个问题,就是如果页面需要大量的重复控件,那么难道我们要一个个,一遍遍写吗? Android为我们提供了,引入布局的操作:<include layout="@layout/title"/>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI