# android_Latout **Repository Path**: jinmingwu/android_Latout ## Basic Information - **Project Name**: android_Latout - **Description**: android布局 线性布局LinearLayout、绝对布局AbsoluteLayout、相对布局RelativeLayout、表格布局TableLayout、单帧布局FrameLayout - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2018-04-27 - **Last Updated**: 2022-01-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #Android 布局 android可视化空间从android.view.View继承而来; 设置视图 1. 使用XML文件配置View的相关属性; 2. 在代码中直接使用相应的类来创建视图; ##XML定义视图 布局文件存放目录:res/layout 文件名:activity.xml 创建时要为组件指定id,如android:id="@+id/名字" ##在代码中使用视图 ``` //示例 public class BtnChangeText extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main);// 加载main.xml布局文件 Button btn=(Button)findViewById(R.id.myButton);// 通过id找到对应的Button组件 } } ``` ##android的五大布局 ###线性布局LinearLayout(常用) 垂直线性布局与水平线性布局; 水平:android:orientation="horizontal"; 垂直:android:orientation="vertical"; ###单帧布局FrameLayout ###绝对布局AbsoluteLayout ###表格布局TableLayout(常用) 每个TableLayout是由多个TableRow组成,一个TableRow表示TableLatout中的每一行; 实际上TableLayout和TableRow都是LineLayout线性布局的子类,但TableRow的参数android:orientation的属性值固定为horizontal; 所以TableRow实际是一个横向的线性布局,且所有子元素宽度和高度一致; ###相对布局RelativeLayout(常用) RelativeLayout继承于android.widget.ViewGroup,其按照子元素之间的位置关系完成布局的; ####功能实现 ``` 1.在RelativeLayout.java中的代码也是简单的只是加载main.xml布局文件。 2.在RelativeLayout布局里的控件包含丰富的排列属性: Android:layout_below 将该控件的底部至于给定id控件之下 Android:ayout_above 将该控件的底部至于给定id控件之下 Android:layout_toLeftOf 将该控件的右边缘于给定id控件左边缘对齐 Android:layout_toRightOf 将该控件的左边缘于给定id控件右边缘对齐 Android:layout_alignBaseline 将该控件的baseline与给定id控件的baseline对齐 Android:layout_alignBottom 将该控件的底部边缘与给定id控件的底部边缘对齐 Android:layout_alignLeft 将该控件的左边缘与给定id控件的左边缘对齐 Android:layout_alignRight 将该控件的右边缘与给定id控件的右边缘对齐 Android:layout_alignTop 将该控件的顶部边缘与给定id控件的顶部边缘对齐 上述属性是当前控件相对于给定id控件来设置其相对位置。 Android:layout_centerInparent,将当前控件放置于起父控件的横向和纵向的中央部分 Android:layout_centerHorizontal,使当前控件置于父控件横向的中央部分 Android:layout_centerVertival,使当前控件置于父控件纵向的中央部分 Android:layout_alignParentBottom,使当前控件的底端和父控件底端对齐 Android:layout_alignParentLeft,使当前控件的左端和父控件左端对齐 Android:layout_alignParentRight,使当前控件的右端和父控件右端对齐 Android:layout_alignParentTop,使当前控件的顶端和父控件顶端对齐 上述属性只能设置Bool类型的值,“true”或“false” ```