首页 > 代码库 > android应用开发详解(七)-------------------布局管理Layout
android应用开发详解(七)-------------------布局管理Layout
【知识点】
android中常见的布局方式:
(1)线性布局LinearLayout:按照垂直或者水平方向布局组件
(2)帧布局FrameLayout:组件从屏幕的左上角坐标布局组件
(3)表格布局TableLayout:按照行列方式布局组件
(4)相对布局RelativeLayout:相对其他组件的布局方式
(5)绝对布局AbsoluteLayout:按照绝对坐标来布局组件
1、工程目录
2、Test_Layout_activity.java
package com.example.test_layout; import android.os.Bundle; import android.app.Activity; import android.content.Intent; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class Test_Layout_Activity extends Activity { private Button myButton1, myButton2, myButton3, myButton4, myButton5; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.test__layout); myButton1 = (Button) findViewById(R.id.buttonLayout01); myButton2 = (Button) findViewById(R.id.buttonLayout02); myButton3 = (Button) findViewById(R.id.buttonLayout03); myButton4 = (Button) findViewById(R.id.buttonLayout04); myButton5 = (Button) findViewById(R.id.buttonLayout05); myButton1.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub Intent intent1 = new Intent(Test_Layout_Activity.this, LinearActivity.class); startActivity(intent1); } }); myButton2.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub Intent intent2 = new Intent(Test_Layout_Activity.this, FrameActivity.class); startActivity(intent2); } }); myButton3.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub Intent intent3 = new Intent(Test_Layout_Activity.this, TableActivity.class); startActivity(intent3); } }); myButton4.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub Intent intent4 = new Intent(Test_Layout_Activity.this, RelativeActivity.class); startActivity(intent4); } }); myButton5.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub Intent intent5 = new Intent(Test_Layout_Activity.this, AbsoluteActivity.class); startActivity(intent5); } }); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.test__layout_, menu); return true; } }
3、LinearActivity.java
package com.example.test_layout; import android.app.Activity; import android.os.Bundle; public class LinearActivity extends Activity{ @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.linear); } }
4、FrameActivity.java、TableActivity.java、RelativeActivity.java、AbsoluteActivity.java与LinearActivity.java类似。
5、test_layout.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <Button android:id="@+id/buttonLayout01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="LinearLayout" /> <Button android:id="@+id/buttonLayout02" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="FrameLayout" /> <Button android:id="@+id/buttonLayout03" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="TableLayout" /> <Button android:id="@+id/buttonLayout04" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="RelativeLayout" /> <Button android:id="@+id/buttonLayout05" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="AbsoluteLayout" /> </LinearLayout>6、linear.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <LinearLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1" android:orientation="horizontal" > <TextView android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_weight="1" android:background="#aa0000" android:gravity="center_horizontal" android:text="red" /> <TextView android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_weight="1" android:background="#00aa00" android:gravity="center_horizontal" android:text="green" /> <TextView android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_weight="1" android:background="#0000aa" android:gravity="center_horizontal" android:text="blue" /> <TextView android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_weight="1" android:background="#aaaa00" android:gravity="center_horizontal" android:text="yellow" /> </LinearLayout> <LinearLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1" android:orientation="vertical" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" android:text="row_one" android:textSize="15pt" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" android:text="row_two" android:textSize="15pt" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" android:text="row_three" android:textSize="15pt" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" android:text="row_four" android:textSize="15pt" /> </LinearLayout> </LinearLayout>
7、table.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <TableLayout android:id="@+id/TableLayout01" android:layout_width="fill_parent" android:layout_height="wrap_content" android:collapseColumns="2" android:stretchColumns="1" > <TableRow android:id="@+id/TableRow01" android:layout_width="wrap_content" android:layout_height="wrap_content" > <TextView android:id="@+id/TextView01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="用户名称" /> <EditText android:id="@+id/EditText01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="admin" /> </TableRow> <TableRow android:id="@+id/TableRow02" android:layout_width="wrap_content" android:layout_height="wrap_content" > <TextView android:id="@+id/TextView02" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="用户密码" /> <EditText android:id="@+id/EditText02" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="123" /> </TableRow> <TableRow android:id="@+id/TableRow02" android:layout_width="wrap_content" android:layout_height="wrap_content" > <Button android:id="@+id/Button01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="注册" /> <Button android:id="@+id/Button02" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="登录" /> </TableRow> </TableLayout> </LinearLayout>8、frame.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <FrameLayout android:id="@+id/FrameLayout01" android:layout_width="wrap_content" android:layout_height="wrap_content" > <TextView android:id="@+id/TextView01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="#aa0000" android:height="150px" android:width="150px" /> <TextView android:id="@+id/TextView02" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="#00aa00" android:height="100px" android:width="100px" /> <TextView android:id="@+id/TextView03" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="#0000aa" android:height="80px" android:width="80px" /> </FrameLayout> </LinearLayout>
9、relative.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <RelativeLayout android:id="@+id/RelativeLayout01" android:layout_width="wrap_content" android:layout_height="wrap_content" > <Button android:id="@+id/a" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="A" /> <Button android:id="@+id/b" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@id/a" android:text="B" /> <Button android:id="@+id/c" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/a" android:text="C" /> <Button android:id="@+id/d" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/b" android:layout_toRightOf="@id/c" android:text="D" /> </RelativeLayout> </LinearLayout>
10、absolute.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <AbsoluteLayout android:id="@+id/AbsoluteLayout01" android:layout_width="wrap_content" android:layout_height="wrap_content" > <Button android:id="@+id/button01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_x="20px" android:layout_y="20px" android:text="A" /> <Button android:id="@+id/button02" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_x="60px" android:layout_y="20px" android:text="B" /> <Button android:id="@+id/button03" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_x="20px" android:layout_y="80px" android:text="C" /> <Button android:id="@+id/button04" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_x="60px" android:layout_y="80px" android:text="D" /> </AbsoluteLayout> </LinearLayout>
11、AndroidMenifest.xml需要做一些修改
<application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="com.example.test_layout.Test_Layout_Activity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.example.test_layout.TableActivity" > </activity> <activity android:name="com.example.test_layout.RelativeActivity" > </activity> <activity android:name="com.example.test_layout.FrameActivity" > </activity> <activity android:name="com.example.test_layout.AbsoluteActivity" > </activity> <activity android:name="com.example.test_layout.LinearActivity" > </activity> </application>
android应用开发详解(七)-------------------布局管理Layout
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。