1.public,protected,private权限区别:
2.<?xml version="1.0" encoding="utf-8"?>作用
每个XML文档都由XML序言开始,在前面的代码中的第一行便是XML序言,<?xml version="1.0"?>。这一行代码会告诉解析器和浏览器,这个文件应该按照1.0版本的XML规则进行解析。
encoding = "utf-8"表示此xml文件采用utf-8的编码格式。
3.xmlns:android=http://schemas.android.com/apk/res/android意义
声明xml命名空间。xmlns意思为“xmlnamespace”.冒号后面是给这个引用起的别名。
schemas是xml文档的两种约束文件其中的一种,规定了xml中有哪些元素(标签)、元素有哪些属性及各元素的关系,当然从面向对象的角度理解schemas文件可以认为它是被约束的xml文档的“类”或称为“模板”。
早期或简单的xml用的是另一种约束,称为DTD,这东西大家天天都见到。html/xhtml中都存在(早期的html可能没有),如"<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"。
现在大部分xml文档的约束都换成schema了,原因是schema本身也是xml,二schema扩展性强。
4.线性布局LinearLayout类
Xml布局管理器
<?xml version="1.0"encoding="utf-8"?>
<!--线性布局内组件:垂直排列;宽高度与父容器组件相同;所有组件对齐容器底部并且水平居中-->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="bottom|center_horizontal"
>
<!-- 设置按钮大小适合包裹内容.“/>”与“</Button>”功能相同 -->
<Button
android:id="@+id/bn1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/bn1"
/>
<Button
android:id="@+id/bn2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/bn2"
></Button>
<Button
android:id="@+id/bn3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/bn3"
/>
······<略去俩按钮代码>
</LinearLayout>
JAVA代码:
packagecom.hqsA.linearlayouttest;
importandroid.os.Bundle;
importandroid.app.Activity;
importandroid.view.Menu;
publicclass LinearLayoutTest extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.linear_layout_test);
}
@Override
public boolean onCreateOptionsMenu(Menumenu) {
// Inflate the menu; this adds items tothe action bar if it is present.
getMenuInflater().inflate(R.menu.linear_layout_test, menu);
return true;
}
}
5.表格布局TableLayout类
(继承与LinearLayout类)
Xml布局管理器:
<?xmlversion="1.0" encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<!-- 定义一个表格布局,指定第二列允许收缩,第三列允许拉伸 -->
<TableLayout android:id="@+id/TableLayout01"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:shrinkColumns="1"
android:stretchColumns="2"
>
<!-- 表格设置。直接添加按钮,并独占一行 -->
<Buttonandroid:id="@+id/ok1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="独自一行的按钮"
/>
<!-- 添加一个表格行 -->
<TableRow>
<!-- 为该行添加三个按钮 -->
<Buttonandroid:id="@+id/ok2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="普通的按钮"
/>
<Buttonandroid:id="@+id/ok3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="收缩的按钮"
/>
<Buttonandroid:id="@+id/ok4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="拉伸的按钮"
/>"
</TableRow>
</TableLayout>
<!-- 定义第二个表格布局,指定第2列允许隐藏 -->
<TableLayoutandroid:id="@+id/TableLayout01"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:collapseColumns="1"
>
<!-- 表格设置。直接添加按钮,并独占一行 -->
<Buttonandroid:id="@+id/ok5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="独自一行的按钮"
/>
<!-- 添加一个表格行 -->
<TableRow>
<!-- 为该行添加三个按钮 -->
<Buttonandroid:id="@+id/ok6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="普通按钮1"
/>
<Buttonandroid:id="@+id/ok7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="普通按钮2"
/>
<Buttonandroid:id="@+id/ok8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="普通按钮3"
/>
</TableRow>
</TableLayout>
<!-- 定义第三个表格布局,指定地二列、第三列可以被拉伸 -->
<TableLayoutandroid:id="@+id/TableLayout01"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:stretchColumns="1,2"
>
<!-- 表格设置。直接添加按钮,并独占一行 -->
<Buttonandroid:id="@+id/ok9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="独自一行的按钮"
/>
<!-- 添加一个表格行 -->
<TableRow>
<!-- 为该行添加三个按钮 -->
<Buttonandroid:id="@+id/ok10"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="普通按钮"
/>
<Buttonandroid:id="@+id/ok11"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="拉伸的按钮"
/>
<Buttonandroid:id="@+id/ok12"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="拉伸的按钮"
/>
</TableRow>
<!-- 再定义一个表格行 -->
<TableRow>
<!-- 为该行添加两个按钮 -->
<Buttonandroid:id="@+id/ok13"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="普通按钮"
/>
<Buttonandroid:id="@+id/ok14"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="拉伸的按钮"
/>
</TableRow>
</TableLayout>
</LinearLayout>
JAVA代码:
packagecom.hqsA.tablelayouttest;
importandroid.os.Bundle;
importandroid.app.Activity;
publicclass TableLayoutTest extends Activity {
@Override
public void onCreate(BundlesavedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.table_layout_test);
}
}