編輯:關於android開發
今天我們的主要內容就是安卓的主要幾個基礎的布局方式。(主要布局如下:)
1.線性布局(LinerLayout)
2.相對布局(RelativeLayout)
3.表格布局(TableLayout)
4.網格布局(GridLayout)
5.絕對布局(AbsoluteLayout)
6.幀布局(FrameLayout)
一:線性布局(LinerLayout)。
1.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" android:padding="5dp" > <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:background="#0000FF" android:gravity="center_horizontal|center_vertical" android:text="線性布局" android:textSize="20sp"/> <LinearLayout android:layout_width="200dp" android:layout_height="150dp" android:layout_gravity="center_horizontal|center_vertical" android:background="#0000FF" android:orientation="horizontal" > <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="2" android:background="#00FF00" android:text="內容一" /> <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:background="#F7F709" android:text="內容二" /> </LinearLayout> <LinearLayout android:layout_width="200dp" android:layout_height="150dp" android:layout_gravity="right" android:background="#0000FF" android:orientation="horizontal" > <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:background="#00FF00" android:text="內容一" /> <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="2" android:background="#F7F709" android:text="內容二" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <Button android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:text="按一" android:onClick="click" /> <Button android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:text="按二" android:onClick="click"/> <Button android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:text="按三" android:onClick="click"/> <Button android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:text="按四" android:onClick="click"/> </LinearLayout> </LinearLayout>
展示:
2.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" > <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="20dp" android:gravity="center_horizontal|center_vertical" android:text="線性布局登錄頁面" android:textSize="20sp" /> <LinearLayout android:layout_width="200dp" android:layout_height="40dp" android:layout_gravity="center_horizontal|center_vertical" android:layout_marginTop="20dp" android:orientation="horizontal" > <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:text="賬號:" android:textSize="15sp" /> <EditText android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="4" /> </LinearLayout> <LinearLayout android:layout_width="200dp" android:layout_height="40dp" android:layout_gravity="center_horizontal|center_vertical" android:orientation="horizontal" > <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:text="密碼:" android:textSize="15sp" /> <EditText android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="4" /> </LinearLayout> <LinearLayout android:layout_width="200dp" android:layout_height="30dp" android:layout_gravity="center_horizontal|center_vertical" android:layout_marginTop="15dp" android:orientation="horizontal" > <CheckBox android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:text="記住賬號" /> <CheckBox android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:text="記住密碼" /> </LinearLayout> <LinearLayout android:layout_width="200dp" android:layout_height="30dp" android:layout_gravity="center_horizontal|center_vertical" android:layout_marginTop="15dp" android:orientation="horizontal" > <Button android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:onClick="click" android:text="登錄" android:textSize="10sp" /> <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:textSize="15sp" /> <Button android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:onClick="click" android:text="注冊" android:textSize="10sp" /> </LinearLayout> </LinearLayout>
展示:
二:相對布局(RelativeLayout)
1.xml文件布局如下:
<?xml version="1.0" encoding="utf-8"?> <!-- 相對布局頁面 --> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/textView" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="20dp" android:gravity="center" android:text="相對布局登錄頁面" android:textSize="20sp" /> <TextView android:id="@+id/textView1" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@id/textView" android:layout_marginLeft="80px" android:layout_marginTop="30dp" android:text="賬號:" android:textSize="15sp" /> <EditText android:id="@+id/firstEditText" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignBottom="@id/textView1" android:layout_marginLeft="130px" android:layout_marginRight="50px" /> <TextView android:id="@+id/textView2" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@id/firstEditText" android:layout_marginLeft="80px" android:layout_marginTop="20dp" android:text="密碼:" android:textSize="15sp" /> <EditText android:id="@+id/firstEditText2" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignBottom="@id/textView2" android:layout_marginLeft="130px" android:layout_marginRight="50px" /> <CheckBox android:id="@+id/checkbox1" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@id/firstEditText2" android:layout_marginLeft="100px" android:layout_marginTop="20dp" android:text="記住賬號" /> <CheckBox android:id="@+id/checkbox2" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignBottom="@id/checkbox1" android:layout_marginLeft="280px" android:layout_marginRight="50px" android:text="記住密碼" /> <Button android:id="@+id/cancelButton1" android:layout_width="match_parent" android:layout_height="40dp" android:layout_below="@id/checkbox2" android:layout_marginLeft="100px" android:layout_marginRight="290px" android:layout_marginTop="25dp" android:text="登錄" android:textSize="14sp" /> <Button android:id="@+id/confremButton2" android:layout_width="match_parent" android:layout_height="40dp" android:layout_alignBottom="@id/cancelButton1" android:layout_marginLeft="290px" android:layout_marginRight="100px" android:text="注冊" android:textSize="14sp" /> </RelativeLayout>
展示:
三:表格布局(TableLayout)
xml文件如下:
<?xml version="1.0" encoding="utf-8"?> <!-- 表格布局頁面 --> <TableLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:padding="5dp" android:stretchColumns="2" > <TableRow> <TextView android:layout_width="50dp" android:layout_height="wrap_content" android:gravity="center" android:text="序號" android:textSize="20sp" /> <TextView android:layout_width="60dp" android:layout_height="wrap_content" android:gravity="center" android:text="書名" android:textSize="20sp" /> <TextView android:gravity="center" android:text="內容" android:textSize="20sp" /> <TextView android:layout_width="60dp" android:layout_height="wrap_content" android:gravity="center" android:text="作者" android:textSize="20sp" /> </TableRow> <View android:layout_height="1.5dp" android:background="#00FF00" /> <TableRow> <TextView android:gravity="center" android:text="1" /> <TextView android:gravity="center" android:text="西游記" /> <TextView android:gravity="center" android:text="取經" /> <TextView android:gravity="center" android:text="鄭晨" /> </TableRow> <View android:layout_height="1.5dp" android:background="#00FF00" /> <TableRow> <TextView android:gravity="center" android:text="2" /> <TextView android:layout_column="2" android:gravity="center" android:text="孫悟空大鬧天空" /> </TableRow> <View android:layout_height="1.5dp" android:background="#00FF00" /> <TableRow> <TextView android:gravity="center" android:text="3" /> <TextView android:layout_column="1" android:gravity="center" android:text="盤龍" /> <TextView android:layout_column="3" android:gravity="center" android:text="鄭晨" /> </TableRow> <View android:layout_height="1.5dp" android:background="#00FF00" /> </TableLayout>
展示:
四:網格布局(GridLayout)
1.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" android:padding="5dp" > <!-- 網格布局 --> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="30dp" android:gravity="center" android:text="計算機" android:textSize="30sp" /> <GridLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:layout_marginTop="20dp" android:columnCount="4" android:rowCount="6" > <EditText android:id="@+id/textView6" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_columnSpan="4" android:layout_gravity="fill_horizontal" android:editable="false" android:focusable="false" android:gravity="right" android:text="0" android:textSize="20sp" /> <Button android:text="AC" android:onClick="acClick"/> <Button android:text="+/-" /> <Button android:text="%" /> <Button android:text="+" /> <Button android:text="7" /> <Button android:text="8" /> <Button android:text="9" /> <Button android:text="x" android:onClick="anClick" /> <Button android:text="4" /> <Button android:text="5" /> <Button android:text="6" android:onClick="bnClick" /> <Button android:text="-" /> <Button android:text="1" android:onClick="onClick" /> <Button android:text="2" /> <Button android:text="3" /> <Button android:text="+" /> <Button android:layout_columnSpan="2" android:layout_gravity="fill_horizontal" android:text="0" /> <Button android:text="." /> <Button android:text="=" /> </GridLayout> </LinearLayout>
2.Activity如下(這是我只寫了幾個按鍵可以按,作為例子):
//網格布局 public class GridLayout extends Activity { private EditText editText; private boolean lastClickIsNumber = false; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.grid_layout); editText = (EditText) findViewById(R.id.textView6); } public void acClick(View v) { } public void onClick(View v) { if (!lastClickIsNumber) { editText.setText("1"); } else { String oldContent = editText.getText().toString().trim(); oldContent += "1"; editText.setText(oldContent); } lastClickIsNumber = true; } public void anClick(View v) { if (!lastClickIsNumber) { editText.setText("x"); } else { String oldContent = editText.getText().toString().trim(); oldContent += "x"; editText.setText(oldContent); } lastClickIsNumber = true; } public void bnClick(View v) { if (!lastClickIsNumber) { editText.setText("6"); } else { String oldContent = editText.getText().toString().trim(); oldContent += "6"; editText.setText(oldContent); } lastClickIsNumber = true; } }
展示:
五.絕對布局(AbsoluteLayout)
xml文件如下:
<?xml version="1.0" encoding="utf-8"?> <AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:padding="5dp"> <TextView android:layout_width="100dp" android:layout_height="100dp" android:layout_x="100dp" android:layout_y="50dp" android:text="你好嗎?"/> <TextView android:layout_width="100dp" android:layout_height="100dp" android:layout_x="50dp" android:layout_y="100dp" android:text="我很好!"/> <TextView android:layout_width="100dp" android:layout_height="100dp" android:layout_x="200dp" android:layout_y="100dp" android:text="真的嗎?"/> <TextView android:layout_width="100dp" android:layout_height="100dp" android:layout_x="100dp" android:layout_y="200dp" android:text="真的!"/> </AbsoluteLayout>
展示:
到此結束,接下來我會介紹安卓的基本控件。
關於eclipse android 在manifest改app應用包名注意事項,androidmanifest在我剛學android 時候,然後立即就做項目。那時連ecl
Xamarin.Android 入門之:Xamarin+vs2015 環境搭建,xamarinvs2015一、前言 此篇博客主要寫了如何使用搭建xamari
【微學堂】第22期| Nginx的性能優化分享主題:Nginx的性能優化分享時間:2016年11月24日(周四)20:00特邀講師:李強(撒加)運維幫專家顧問團成員,先後
Android有三個基礎組件Activity,Service和Bro