第一行代码 第三章
来源:互联网 发布:csol怒海狂鲨数据 编辑:程序博客网 时间:2024/05/06 06:31
match_parent:由父布局来决定当前控件的大小(同fill_parent)
wrap_parent:由控件内容来决定当前控件的大小
android:gravity属性:用来指定文字在控件的对齐方式。可选值有top、bottom、left、right、center(center_horizontal和center_vertical)
android:layout_gravity属性:用来指定控件在布局中的对齐方式。可选值有top、bottom、left、right、center(center_horizontal和center_vertical)
字体大小用sp作为单位。
控件大小、间距用dp作为单位。
系统会对Button中所有的英文字母自动转成大写。可使用android:textALLcaps=”false”属性来禁用这一功能。
android:hint属性:用来给EditText指定一段提示性的文本。
android:maxLines属性:用于给EditText指定最大的行数
所有的Android控制都具有可见属性。通过android:visibility属性来指定,可选值有visible、invisible、gone。
visible:默认值,可见性
invisible:指定为不可见,但仍然占用原来位置的大小空间,这种方式可以理解为控件处于透明状态
gone:指定为不可见,且不占用空间。
在代码中,通过setVisibility(),传入View.VISIBLE、View.INVISIBLE和View.GONE来控制;通过getVisibility()来判断控件是否可见。
这样就能够控制控件的显示与隐藏了。
setCancelable(),传入false,表示控件不能通过back键取消掉;传入true,表示控件可以通过back键取消。
LinearLayout的属性:
android:orientation属性:可选值为vertical(垂直方向)和horizontal(水平方式)
android:layout_weight属性:允许通过比例的方式来指定控件的大小。此方式会将父布局中所有控件指定的layout_weight值相加,得到总值。
然后每个控件所占大小的比例就是该控件的layout_weight值除以总值。如果父布局当中存在没有指定layout_weight属性的控件,则该控件按原有控件的大小显示,然后在剩余的空间中按比例分配。
RelativeLayout的属性:
相对于父布局进行定位:
android:layout_alignParentTop=”true”
android:layout_alignParentBottom=”true”
android:layout_alignParentLeft=”true”
android:layout_alignParentRight=”true”
android:layout_centerInParent=”true”
相对于控件进行定位:
android:layout_above=”@id/”
android:layout_below=”@id/”
android:toLeftOf=”@id/”
android:toRightOf=”@id/”
当一个控件去引用另一个控件的id时,该控件一定要定义在引用控件的后面(即引用前,先定义)。
相对于控件的边缘对齐进行定位:
android:alignLeft=”@id/”
android:alignRight=”@id/”
android:alignTop=”@id/”
android:alignBottom=”@id/”
FrameLayout(帧布局)、TableLayout(表格布局)、AbsoluteLayout(绝对布局),用的少。
新增百分比布局,此方式需要在buil.gradle中添加库依赖
compile ‘com.android.support:percent:24.2.1’
百分比布局只是为FrameLayout和RelativeLayout进行功能扩展,提供了PercentFrameLayout和PercentRelativeLayout,它们还是会继承FrameLayout和Relativelayout的特性。它们的控件在布局中所占用控件直接使用百分比来控制。
由于百分比布局不是系统内置的,所以需要把完整的包路径写出来,同时还必须定义一个app的命名空间。
buil.gradle文件dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:25.0.1' compile 'com.android.support:percent:25.0.1'}
xml布局文件:<?xml version="1.0" encoding="utf-8"?><android.support.percent.PercentFrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent"> <!-- 命名空间的写法: xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" --> <Button android:id="@+id/btn1" android:text="btn1" android:layout_gravity="left|top" app:layout_widthPercent="50%" app:layout_heightPercent="50%" /> <Button android:id="@+id/btn2" android:text="btn2" android:layout_gravity="right|top" app:layout_widthPercent="50%" app:layout_heightPercent="50%" /> <Button android:id="@+id/btn3" android:text="btn3" android:layout_gravity="left|bottom" app:layout_widthPercent="50%" app:layout_heightPercent="50%" /> <Button android:id="@+id/btn4" android:text="btn4" android:layout_gravity="right|bottom" app:layout_widthPercent="50%" app:layout_heightPercent="50%" /></android.support.percent.PercentFrameLayout>
- 第一行代码 第三章
- 第一行代码 第三章 ListView
- 第一行代码 第三章 RecyclerView
- 第一行代码第三日
- 《第一行代码》读书笔记(第三章,第四章)
- <android>第一行代码第三章源码整理
- 【Android】《第一行代码—Android》第三章总结
- 第一行代码系列第三章——自定义布局
- 第一行代码笔记,第三章----UI的点滴
- 读书笔记 第一行代码 第三章UI开相关
- 第一行代码 第三章 引入布局和自定义控件
- 《第一行代码》 随手笔记——第三章 UI开发的点点滴滴
- 第一行代码第二版(郭霖著)笔记之第三章(UI开发的点点滴滴)
- 第一行代码 读书笔记 第1章
- 第一行代码 读书笔记 第2章
- 读书笔记 《第一行代码》 第13章
- 第 1 章,第一行代码
- 《第一行代码》第 1 章
- 使用python抓取美团商家信息
- 获取ServletAPI
- 我对虚拟内存的理解
- 批量经纬度转成空间直角坐标系
- iOS,OC给button添加block点击事件扩展
- 第一行代码 第三章
- Hdu 6032 关于字符串的博弈
- HDU5527
- 软件编写规范(程序效率篇)
- 响应式网站需掌握的基本知识以及项目实战总结
- Tomcat的项目发布三种方式
- Qt官方的安装包制作框架
- dedecms 关于二级域名和一级域名切换
- Storm DRPC