首页必赢亚洲bwin188 › 五分钟精晓布局

五分钟精晓布局

在android中利用的界面是以xml来公司的,那或多或少和WPF相似,通过部署xml文件我们能够灵活的构建出您自己想要的界面。

而在有着的xml界面文件中,根节点必须是布局,即先有布局,然后在布局中社团控件或嵌套布局,android中的布局有5种,熟稔各类布局的运用对我们今后开发中更好的团伙界面大有益处,以下简单介绍。

  • TableLayout

报表布局,就是近乎我们在网页中以表格来集团控件的布局。以N行N列的款式排列出相应的控件。

 1  <TableLayout
 2         android:layout_width="wrap_content"
 3         android:layout_height="wrap_content"
 4         android:layout_alignLeft="@+id/textView1"
 5         android:layout_centerHorizontal="true"
 6         android:layout_centerVertical="true" >
 7 
 8         <TableRow
 9             android:id="@+id/tableRow1"
10             android:layout_width="wrap_content"
11             android:layout_height="wrap_content" >
12 
13             <Button
14                 android:layout_width="wrap_content"
15                 android:layout_height="wrap_content"
16                 android:text="1行1列" />
17 
18             <Button
19                 android:layout_width="wrap_content"
20                 android:layout_height="wrap_content"
21                 android:text="1行2列" />
22         </TableRow>
23 
24         <TableRow
25             android:id="@+id/tableRow2"
26             android:layout_width="wrap_content"
27             android:layout_height="wrap_content" >
28 
29             <Button
30                 android:layout_width="wrap_content"
31                 android:layout_height="wrap_content"
32                 android:text="2行1列" />
33 
34             <Button
35                 android:layout_width="wrap_content"
36                 android:layout_height="wrap_content"
37                 android:text="2行2列" />
38         </TableRow>
39 
40         <TableRow
41             android:id="@+id/tableRow3"
42             android:layout_width="wrap_content"
43             android:layout_height="wrap_content" >
44 
45             <Button
46                 android:layout_width="wrap_content"
47                 android:layout_height="wrap_content"
48                 android:text="3行1列" />
49 
50             <Button
51                 android:layout_width="wrap_content"
52                 android:layout_height="wrap_content"
53                 android:text="3行2列" />
54         </TableRow>
55     </TableLayout>

图片 1

  • LineLayout

线性布局,相比简单,就是以水平或垂直的措施一行一个或一列一个的款式布置控件。

 1   <LinearLayout
 2         android:layout_width="fill_parent"
 3         android:layout_height="fill_parent"
 4         android:orientation="vertical" >//水平或垂直
 5 
 6         <Button
 7             android:layout_width="fill_parent"
 8             android:layout_height="wrap_content"
 9             android:text="1行" />
10 
11         <Button
12             android:layout_width="fill_parent"
13             android:layout_height="wrap_content"
14             android:text="2行" />
15 
16         <Button
17             android:layout_width="fill_parent"
18             android:layout_height="wrap_content"
19             android:text="3行" />
20     </LinearLayout>

图片 2

  • RelativeLayout

相对布局,最为灵活得分一种布局,用于集体一些错综复杂界面,在此布局中的子元素里与职务相关的属性将生效。例如android:layout_below,
 android:layout_above, android:layout_centerVertical等。注目的在于指定地点关系时,引用的ID必须在引用此前,先被定义,否则将出现至极。

 1  <RelativeLayout
 2         android:layout_width="fill_parent"
 3         android:layout_height="fill_parent"
 4         android:orientation="vertical" >
 5 
 6         <Button
 7             android:id="@+id/text_01"
 8             android:layout_width="50dp"
 9             android:layout_height="50dp"
10             android:layout_alignParentBottom="true"
11             android:gravity="center"
12             android:text="1" />
13 
14         <Button
15             android:id="@+id/text_02"
16             android:layout_width="50dp"
17             android:layout_height="50dp"
18             android:layout_above="@id/text_01"//相对布局中的特有属性,xx之上/之下/之左/之右等
19             android:layout_centerHorizontal="true"
20             android:gravity="center"
21             android:text="2" />
22 
23         <Button
24             android:id="@+id/text_03"
25             android:layout_width="50dp"
26             android:layout_height="50dp"
27             android:layout_above="@id/text_01"
28             android:layout_toLeftOf="@id/text_02"//相对布局中的特有属性,在xx的左边
29             android:gravity="center"
30             android:text="3" />
31     </RelativeLayout>

图片 3

  • AbsoluteLayout

纯属布局,在此布局中的子元素的android:layout_x和android:layout_y属性将生效,用于描述该子元素的坐标地点,一经设置变不可以改变地点,适用一些不平日转移的控件或界面。

 1 <AbsoluteLayout
 2         android:layout_width="fill_parent"
 3         android:layout_height="fill_parent"
 4         android:orientation="vertical" >
 5 
 6         <Button
 7             android:layout_width="50dp"
 8             android:layout_height="50dp"
 9             android:layout_x="50dp"
10             android:layout_y="50dp"
11             android:background="#999999"
12             android:gravity="center"
13             android:text="1" />
14 
15         <Button
16             android:layout_width="50dp"
17             android:layout_height="50dp"
18             android:layout_x="90dp"
19             android:layout_y="90dp"
20             android:background="#ff654321"
21             android:gravity="center"
22             android:text="2" />
23 
24         <Button
25             android:layout_width="50dp"
26             android:layout_height="50dp"
27             android:layout_x="125dp"
28             android:layout_y="125dp"
29             android:background="#fffedcba"
30             android:gravity="center"
31             android:text="3" />
32     </AbsoluteLayout>

图片 4

  • FrameLayout

 帧布局,网上说的有点别扭,我自己清楚就恍如css中的z-index,可以实现遮罩,即有层的功能。注意:所有的帧默认都是从屏幕左上角开始绘制,然后按照控件的扬言顺序,依次叠加,层级逐步上升。 

 1 <FrameLayout
 2         android:layout_width="fill_parent"
 3         android:layout_height="fill_parent"
 4         android:orientation="vertical" >
 5 
 6         <TextView
 7             android:layout_width="fill_parent"
 8             android:layout_height="fill_parent"
 9             android:background="#999999"
10             android:gravity="center"
11             android:text="1" />
12 
13         <TextView
14             android:layout_width="200dp"
15             android:layout_height="100dp"
16             android:background="#ff654321"
17             android:gravity="center"
18             android:text="2" />
19 
20         <TextView
21             android:layout_width="50dp"
22             android:layout_height="50dp"
23             android:background="#fffedcba"
24             android:gravity="center"
25             android:text="3" />
26     </FrameLayout>

图片 5

五大布局已经介绍完毕,有些简单,(因为这一个布局我认为实在也没怎么好说的,结合配图我以为已经很能印证问题了)。我在写那么些序列往日也说了“我并不想做重复性的劳作”,类似这种基础的东西,网上广大人写的比自己好也很详细,我只是想把团结在求学过程中以为有必不可少和豪门享受的部分经历和技术写出来,所以您能够阅览自家并不曾写什么HelloWorld之类的,因为与其把时光花在这种已经泛滥的始末上,倒不如多花时间去贡献一些独有的,或被大家忽略的始末上。

写技术博客真的很费时间,得理顺思路、协会语言、写Demo、截图、排版等等,有时候真羡慕这一个可以一周五篇甚至几天一篇得大牛们。如今学的情节和点都相比多,看着大篇凌乱的笔记,一时间都不明白该从哪去写,自己更新的有点慢,不过自己或者会百折不挠的,一起加油!

转载本站文章请注明出处:必赢亚洲56电子游戏 https://www.creatologue.com/?p=1595

上一篇:

下一篇:

相关文章

网站地图xml地图