<?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="fill_parent" android:layout_width="fill_parent"> <TextView android:id="@+id/text1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#00ff00" android:textsize="1OOdip" android:text="@string/first"/> <TextView android:id="@+id/text2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#00ffff" android:textsize="70dip" android:text="@string/second"/> <TextView android:id="@+id/text3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#ffOOOO" android:textsize="40dip" android:text="@string/third"/> <TextView android:id="@+id/text4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#fffffOO" android:textSize="40dip" android:layout_gravity="bottom" android:text="@string/forth"/> </FrameLayout>其中:
android:layout_width="wrap_content"
android:layout_height="wrap_content"
<?xml version="1.0" encoding="UTF-8" ?> <resources> <string name="app_name">FrameLayoutDemo</string> <string name="first">第一层</string> <string name="second">第二层</string> <string name="third">第三层</string> <string name="forth">第四层</string> </resources>从运行后的结果可见,前 3 个被放置到 FrameLayout 的 TextView 组件都是以屏幕左上角为基点进行叠加的。第4个 TextView 因为设置了 android:layout_gravity="bottom" 属性而显示到了布局的下方。可自行将 android:layout_gravity 属性值修改为其他属性,查看运行效果。
<?xml version="1.0" encoding="UTF-8"?> <resources> <string name="app_name">LinearLayoutDemo</string> <string name="red">red</string> <string name="yellow">yellow</string> <string name="green">green</string> <string name="blue">blue</string> <string name="row1">row one</string> <string name="row2">row two</string> <string name="row3">row three</string> <string name="row4">row four</string> </resources>实例 LinearLayoutDemo 中的布局文件 main.xml 代码如下:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_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_gravity="center_horizontal" android:layout_weight="1" android:background="#aa0000" android:text="@string/red" /> <TextView android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_gravity="center_horizontal" android:layout_weight="1" android:background="#00aa00" android:text="@string/green" /> <TextView android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_gravity="center_horizontal" android:layout_weight="1" android:background="#0000aa" android:text="@string/blue" /> <TextView android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_gravity="center_horizontal" android:layout_weight="1" android:background="#aaaa00" android:text="@string/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="@string/row1" android:textSize="15pt" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" android:text="@string/row2" android:textSize="15pt" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" android:text="@string/row3" android:textSize="15pt" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" android:text="@string/row4" android:textSize="15pt" /> </LinearLayout> </LinearLayout>该布局中放置了两个 LinearLayout 布局对象。
属性 | 描述 |
---|---|
android:layout_above="@id/xxx" | 将控件置于给定 ID 控件之上 |
android:layout_below="@id/xxx" | 将控件置于给定 ID 控件之下 |
android:layout_toLeftOf="@id/xxx" | 将控件的右边缘和给定 ID 控件的左边缘对齐 |
android:layout_toRightOf="@id/xxx" | 将控件的左边缘和给定 ID 控件的右边缘对齐 |
android:layout_alignBaseline="@id/xxx" | 将控件的 baseline 与给定 ID 的 baseline 对齐 |
android:layout_alignTop="@id/xxx" | 将控件的上边缘和给定 ID 控件的上边缘对齐 |
android:layout_alignBottom="@id/xxx" | 将控件的底边缘和给定 ID 控件的底边缘对齐 |
android:layout_alignLeft="@id/xxx" | 将控件的左边缘和给定 ID 控件的左边缘对齐 |
android:layout_alignRight="@id/xxx" | 将控件的右边缘和给定 ID 控件的右边缘对齐 |
android:layout_alignParentLeft="true" | 将控件的左边缘和父控件的左边缘对齐 |
android:layout_alignParentTop="true" | 将控件的上边缘和父控件的上边缘对齐 |
android:layout_alignParentRight="true" | 将控件的右边缘和父控件的右边缘对齐 |
android:layout_alignParentBottom="true" | 将控件的底边缘和父控件的底边缘对齐 |
android:layout_centerInParent="true" | 将控件置于父控件的中心位置 |
android:layout_centerHorizontal="true" | 将控件置于水平方向的中心位置 |
android:layout_centerVertical="true" | 将控件置于垂直方向的中心位置 |
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:id="@+id/label" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> <EditText android:id="@+id/enter" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_below="@+id/label" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_below="@+id/enter" android:text="@string/butltext" /> <Button android:id="@+id/ok" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBottom="@+id/button1" android:layout_alignParentLeft="true" android:text="@string/but2text" /> </RelativeLayout>该 RelativeLayout 布局的过程如下:
<?xml version="1.0" encoding="UTF-8"?> <resources> <string name="hello">Hello World,TableLayout!</string> <string name="app_name">TableLayoutDemo</string> <string name="column1">第一行第一列</string> <string name="column2">第一行第二列</string> <string name="column3">第一行第三列</string> <string name="empty">最左面的可伸缩TextView</string> <string name="row2column2">第二行第三列</string> <string name="row2column3">End</string> <string name="merger">合并三个单元格</string> </resources>实例 TableLayoutDemo 中的布局文件 main.xml 的代码如下:
<?xml version="1.0" encoding="utf-8"?> <TableLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TableRow> <TextView android:text="@string/column1" /> <TextView android:text="@string/column2" /> <TextView android:text="@string/column3" /> </TableRow> <TextView android:layout_height="wrap_content" android:background="#fff000" android:gravity="center" android:text="单独的一个TextView" /> <TableRow> <Button android:layout_span="3" android:gravity="center_horizontal" android:text="@string/merger" android:textColor="#f00" /> </TableRow> <TextView android:layout_height="wrap_content" android:background="#fa05" android:text="单独的一个TextView" /> <TableRow android:layout_height="wrap_content"> <TextView android:text="@string/empty" /> <Button android:text="@string/row2column2" /> <Button android:text="string/row2column3" /> </TableRow> </TableLayout>布局文件 main.xml 在 TableLayout 布局内添加了两个 TableRow 和两个 TextView,形成了如图 6 所示的效果。从运行效果看,第一行和第五行都没能完全显示。
<?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" > <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_x="32px" android:layout_y="53px" android:text="Button" /> <Button android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_x="146px" android:layout_y="53px" android:text="Button" /> <Button android:id="@+id/button3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_x="85px" android:layout_y="135px" android:text="Button" /> </AbsoluteLayout>其中:
android:layout_x="85px"
android:layout_y="135px"
<uses-permission android:name="android.permission.INTERNET" />
在布局文件 main.xml 中添加一个 WebView 组件。Main.xml 内容如下:<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical"> <WebView android:id="@+id/webView1" android:layout_width="match_parent" android:layout_height="match_parent"/> </LinearLayout>实例 WebViewDemo 中的 Activity 文件 WebViewDemoActivity.java 代码如下:
package introduction.android.webView; import android.app.Activity; import android.os.Bundle; import android.webkit.WebView; public class WebViewDemoActivity extends Activity { private WebView webView; /** * Called when the acctivity is first crested. */ @Override public void onCreate(Bundle saveInstanceState) { super.onCreate(saveInstanceState); setContentView(R.layout.main); webView = (WebView) findViewById(R.id.webView1); webView.getSettings().setJavaScriptEnabled(true); webView.loadUrl("http://www.google.com"); } }运行效果如图 9 所示:
Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有