![Android移动应用开发技术与实践](https://wfqqreader-1252317822.image.myqcloud.com/cover/15/40681015/b_40681015.jpg)
上QQ阅读APP看书,第一时间看更新
4.4 绝对布局(AbsoluteLayout)
绝对布局一般是不会被使用的,但作为一个优秀的程序员,还是必须要掌握它的用法。开发应用需要在很多机型上进行适配,如果使用了绝对布局,会因为手机屏幕尺寸差别比较大,适应性比较差,在屏幕上的适配会产生缺陷,所以不建议使用。
4.4.1 AbsoluteLayout介绍
AbsoluteLayout又可以叫作坐标布局,采用坐标轴的方式定位组件,左上角是(0,0)点,往右x轴递增,往下y轴递增。
AbsoluteLayout子类控件的属性如下。
1)android:layout_x="35dip"控制当前子类控件的x位置。
2)android:layout_y="40dip"控制当前子类控件的y位置。
使用示例:
1)先设置成AbsoluteLayout绝对布局,如图4-4所示。
2)从左边拖拉两个TextView和EditText以及一个按钮到界面上,如图4-5所示。
![](https://epubservercos.yuewen.com/B95AF2/21122066801630906/epubprivate/OEBPS/Images/100_02.jpg?sign=1739575148-LGMBe3ZwscTqaNMGobvcG0WQoHHevn0I-0-d0dbf726c465ccb313ba7e40f960ed1c)
图4-4 设置AbsoluteLayout
![](https://epubservercos.yuewen.com/B95AF2/21122066801630906/epubprivate/OEBPS/Images/100_03.jpg?sign=1739575148-kgbmOVoL5yGD8cArNbTd2i9v4US2zJCj-0-a073da4acb6a96181cd5016463fc90f2)
图4-5 修改前
3)在代码中修改坐标,如图4-6和图4-7所示。
![](https://epubservercos.yuewen.com/B95AF2/21122066801630906/epubprivate/OEBPS/Images/101_01.jpg?sign=1739575148-qNoT7dJlkfmfEc9ZmLddH2rtJBB5Pb4P-0-7da0c1fd149fd39129786b83121ee2d0)
图4-6 修改后(a)
![](https://epubservercos.yuewen.com/B95AF2/21122066801630906/epubprivate/OEBPS/Images/101_02.jpg?sign=1739575148-STVvpmdECmdUhOlw2KttHvRCX4xu9FF6-0-f84a1c655c01e78a3d5da2e4f3572fc1)
图4-7 修改后(b)
4.4.2 AbsoluteLayout实例
AbsoluteLayout可以直接指定子元素的绝对位置,这种布局简单直接,直观性强。但是由于手机屏幕尺寸差别比较大,使用绝对定位的适应性会比较差。
【例4-4】 布局XML
![](https://epubservercos.yuewen.com/B95AF2/21122066801630906/epubprivate/OEBPS/Images/101_03.jpg?sign=1739575148-kEAsRUElsXHEHBzeC9ktLTQZM9HqpLts-0-4d78190021f93969cdca4848d00ea3a6)
![](https://epubservercos.yuewen.com/B95AF2/21122066801630906/epubprivate/OEBPS/Images/102_01.jpg?sign=1739575148-zTtpBAp6d54W8fQ0xAT9V6aKNzKZoOjn-0-5a38397e44251568b463e5f78a232df2)
编译并运行,结果如图4-8所示。
![](https://epubservercos.yuewen.com/B95AF2/21122066801630906/epubprivate/OEBPS/Images/102_02.jpg?sign=1739575148-le1jGKHybAV5uuENQoiK8dTW8dwYu4ta-0-fe01f8df7f0015acb06e14496f9e8deb)
图4-8 运行结果
【程序说明】
Button中对按钮的属性进行配置。
配置声明了按钮的大小、位置以及名称。