Android之路 6.4种基本布局
来源:互联网 发布:linux结束所有进程命令 编辑:程序博客网 时间:2024/06/07 14:39
1.LinearLayout(线性布局)
会将它所包含的控件在线性方向上依次排列
android:orientation="vertical"
orientation修改排列方向
layout_gravity用于指定控件在布局中的对齐方式
layout_weight允许使用比例的方式来指定控件的大小,它在手机屏幕的适配性方面可以起到非常重要的作用
2.RelativeLayout(相对布局)
它可以通过相对定位的方式让控件出现在布局的任何位置
layout_alignParentLeft、layout_alignParentTop、layout_centerInParent等属性控制控件在父布局中的位置
android:layout_above="@+id/button3"android:layout_toLeftOf="@+id/button3"
layout_above等属性相对于控件进行定位
注意让一个控件去引用另一个控件的id时,该控件一定要定义在引用控件的后面,不然会出现找不到id的情况
3.FrameLayout(帧布局)
这种布局没有方便的定位方式,所有的控件都会默认摆放在布局的左上角。
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/text_view" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="left" android:text="This is TextView"/> <ImageView android:id="@+id/image_view" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="right" android:src="@mipmap/ic_launcher"/></FrameLayout>
4.百分比布局
在这种布局中,我们可以不再使用wrap_content、match_parent等方式来指定控件的大小,而是允许直接指定控件在布局中所占的百分比,这样的话就可以轻松实现平分布局甚至是任意比例分隔布局的效果了。
由于LinearLayout本身已经支持按比例指定空间的大小了,因此百分比布局只为FrameLayout和RelativeLayout进行了功能扩展,提供了PercentFrameLayout和PercentRelativeLayout这两个全新的布局。
首先打开app/build.gradle文件,在dependencies闭包中添加如下内容:
dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { exclude group: 'com.android.support', module: 'support-annotations' }) compile 'com.android.support:appcompat-v7:25.3.1' compile 'com.android.support:percent:25.3.1' testCompile 'junit:junit:4.12'}
然后修改activity_main.xml中的代码:
<android.support.percent.PercentFrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent"> <Button android:id="@+id/button1" android:text="Button 1" android:layout_gravity="left|top" app:layout_widthPercent="50%" app:layout_heightPercent="50%"/> <Button android:id="@+id/button2" android:text="Button 2" android:layout_gravity="right|top" app:layout_widthPercent="50%" app:layout_heightPercent="50%"/> <Button android:id="@+id/button3" android:text="Button 3" android:layout_gravity="left|bottom" app:layout_widthPercent="50%" app:layout_heightPercent="50%"/> <Button android:id="@+id/button4" android:text="Button 4" android:layout_gravity="right|bottom" app:layout_widthPercent="50%" app:layout_heightPercent="50%"/></android.support.percent.PercentFrameLayout>
最外层使用PercentFrameLayout,由于百分比布局不是内置在系统SDK当中的,所以需要把完整的包路径写出来。然后还必须定义一个app的命名空间,这样才能使用百分比布局的自定义属性。
阅读全文
0 0
- Android之路 6.4种基本布局
- android四种基本布局之LinearLayout
- android四种基本布局之RelativeLayout
- android四种基本布局之FrameLayoutAndTableLayout
- android开发之四种基本布局
- Android之四种基本布局
- android基本布局之LinearLayout
- Android入门之基本布局
- Android开发学习之路--UI之基本布局
- android开发之四种基本布局和自定义控件
- Android UI之五种基本布局详解
- android-四种基本布局
- Android四种基本布局
- Android, 四种基本布局
- 【Android】四种基本布局
- Android四种基本布局
- Android四种基本布局
- Ionic之基本布局
- vim简单使用方法
- IT界的十个道德主题
- Android之路5.常用控件的使用
- python爬虫 使用selenium+phontomjs 模拟点击输入 获取东航加载后的源码 机票价格
- MATLAB中的四种取整函数
- Android之路 6.4种基本布局
- C语言注释行转换
- 关于C语言的指针
- 在项目中使用vue过滤器小结
- 编译器的原理浅析
- 禁止Ctrl+滚轮事件
- 解决进入app界面白屏黑屏问题
- 在Android Studio使用Git实现版本管理(一):拥有一个GitHub账号
- Windows下的spark环境的搭建