1、相对布局
简单的说,就是通过描述每个组件所在的位置,使用的layout_below等,就是控制组件与组件之间的位置关系。
2.绝对布局
就是通过描述他的x,y坐标来确定位置
3.线性布局
有两种是水平和竖直对其方式,一般情况下整体会使用线性布局,来排列众多的组件
3.帧布局
我感觉就是一层一层的,默认的情况下,多个组件是在同一个位置,所以你需要去修改位置。同时可以选择是否显示。
这可以用来描述视频播放器暂停键的控制方法。
代码如下。
<?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > <TextView android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center" android:text="我是視頻播放器,我在播放文本" android:visibility="visible" /> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center" > <ImageView android:id="@+id/iv" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:src="@drawable/ic_launcher" android:visibility="invisible" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" > <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="播放" android:onClick="play"/> <Button android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="暫停" android:onClick="pause"/> </LinearLayout> </FrameLayout>
package com.example.layout; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.ImageView; public class MainActivity extends Activity { public ImageView iv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.frame); iv=(ImageView) findViewById(R.id.iv); } public void play(View ciew){ iv.setVisibility(View.INVISIBLE); } public void pause(View ciew){ iv.setVisibility(View.VISIBLE); } }
代码很简单。但是用到了帧布局和相对布局。
5.网络布局
这个的作用就是像网格一样的。感觉和java GUI的功能是一样的。
总结这些布局,可以类比javaGUI中的几种布局类型。