上次我们说到了利用intend实现两个页面之间的交互。那么如何做出一个漂亮的页面呢?今天我们来介绍一下,Android如何进行页面布局。

一、线性布局控件LinearLayout

1、 属性orientation

LinearLayout是布局中最基本的控件,也是最常用的布局控件。它有两种,一种是水平布置(horizontal);另一种是垂直布置(vertical),通过属性orientation来设置,水平布局时只有一行可以有若干列;垂直布局时只有一列,可以有若干行。

2、属性gravity

android:gravity属性用来控制放置在本LinearLayout内的控件的对齐方式


android:layout_gravity属性是本LinearLayout控件相对于父容器的对齐方式


3、属性layout_weight

android:layout_weight是一个重要的属性,也是一个麻烦的属性,用的好可以让布局更加合理、紧凑。用的不好会使布局显得十分别扭。这个属性的字面意思是“权重”,就是一个比例系数,即表示控件在父容器中所占的空间比例。系数越大,占的比例越大,默认值为0;如果父容器中的各个子控件的android:layout_weight值相等,那么他们将均分父容器空间。

<LinearLayout 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" android:orientation="horizontal" >    <TextView  android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="#0045f5" android:gravity="center" android:text="1" />    <TextView  android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="#00ff47" android:gravity="center" android:text="2" android:layout_weight="1"/>    <TextView  android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="#ff5600" android:gravity="center" android:layout_weight="1" android:text="3" /></LinearLayout>

效果如图

二、相对布局控件RelativeLayout

布置在RelativeLayout中的控件会多出几个属性,主要用于处理控件的相对位置——相对于父容器、相对于一个控件元素。

1、常用的属性

第一类 : 属性值为 truefalse

第二类:属性值必须为 id 的引用名“ @id/id-name

第三类:属性值为具体的像素值,如 30dip , 40px

三、对比使用

  • LinearLayout

一般用来把界面分成几部分,可以设置它的orientation,指定它是横向还是纵向的。

  • RelativeLayout

是一个相对布局的组件,非常好用的一个组件。它里面的控件都可以随意设定相对位置,可以是相对于相邻的控件(layout_toLeftOf等),也可以是相对其父控件RelativeLayout(layout_alignParentLeft等)。相对父控件特别有用,比如有时我们需把一个控件靠底部,就可以使用layout_alignParentBottom.  

  • 综合使用

整个页面的布局,通常是一个大的LinearLayout,把页面分成几部分,比如上中下。然后再根据需要,每个部分放一个RelativeLayout,再在其中放子控件,并设定好相对的位置。

总结

我们通过学习使用这些布局控件和属性,就可以做出自己想要的Android界面了,但是,想了解更多的Android开发技术,还需我们不断的学习,不断的使用。

更多相关文章

  1. 关于TextView限制显示字符,多余用省略号显示问题
  2. Android中智能控件AutoCompleteTextView
  3. Android中自定义ViewGroup实现表格展示学员信息
  4. Android使用动画的注意事项
  5. Google 开源的 Android(安卓)排版库:FlexboxLayout
  6. Android(安卓)消息通知栏用法详解(一)
  7. Android(安卓)ListItem 的布局方案
  8. Adapter用法总结
  9. Android布局优化的几种方法

随机推荐

  1. Android 关闭虚拟按钮、底部导航条
  2. Android 开发环境搭建9传送帖)
  3. Android获取手机短信和通话记录及通讯录
  4. android PopupWindow简单例子
  5. Android(安卓)三种菜单(Menu)的实现
  6. [ ]在Android系统上使用busybox——最简
  7. Android NDK Camera2小结
  8. Android(安卓)Audio System 之二: AudioFl
  9. android画图-----shape的使用
  10. TextView 行间距以及字间距