版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二章五大布局线性布局(LinearLayout)1.LinearLayout属性:android:gravity=“center”控件中内容相对控件的对齐方式的设置android:layout_gravity=“center”控件相对于父view对齐方式的设置marginLeft左边间隔距离marginRight右边间隔距离marginBottom下边间隔距离marginTop上边间隔距离background背景颜色或图片layout_weight权重比率layout_width控件的宽度fill_layoutmatch_layoutwrap_layoutlayout_height控件的高度fill_layoutmatch_layoutwrap_layout(1)fill_parent-1Theviewshouldbeasbigasitsparent(minuspadding).ThisconstantisdeprecatedstartingfromAPILevel8andisreplacedbymatch_parent.
(2)match_parent-1Theviewshouldbeasbigasitsparent(minuspadding).IntroducedinAPILevel8.
(3)wrap_content-2Theviewshouldbeonlybigenoughtoencloseitscontent(pluspadding).线性布局(LinearLayout相对布局(RelativeLayout)相对布局(RelativeLayout)第一组layout相对布局属性
android:layout_below
android:layout_toRightOf移动到指定控件的右边Androidlayout_toLeftOf="@id/btn1"移动到指定控件的左边android:layout_below="@id/btn1"移动到指定控件的下边android:layout_above="@id/btn1"移动到指定控件的上边注:此属性时写在控件标签内部,用于控制控件的浮动,类似于CSS中的float属性.相对布局(RelativeLayout)第二组Layout相对布局属性
android:layout_alignLeft
android:layout_alignRight
android:layout_alignTop
android:layout_alignBottom注:此组属性时控制控件的对齐方式,分别对应为左对齐右对齐上对齐和下对齐相对布局(RelativeLayout)第三组layout相对布局属性
android:layout_alignBaseLine注:此属性是让控件中的text(仅限于拉丁语系字母)以基准线为标准对齐.相对布局(RelativeLayout)第四组layout相对布局属性:android:layout_centerInParent="true"移动到父容器的中间layout_alignParentTop="true"移动到父容器的上面android:layout_alignParentBottom=""移动到父容器的下面android:layout_alignParentLeft=""移动到父容器的左android:layout_alignParentRight=""移动到父容器的右练习表格布局(TableLayout)按行和列来进行排列<TableRow>每一行帧布局(FrameLayout)一层一层可以叠加的排列方式绝对布局(AbsoluteLayout)根据X轴和Y轴来进行排列
Shape使用
在Android程序开发中,我们经常会去用到Shape这个东西去定义各种各样的形状
corners:圆角android:radius为角的弧度,值越大角越圆。
我们还可以把四个角设定成不同的角度,同时设置五个属性,则Radius属性无效android:Radius="20dp"
设置四个角的半径android:topLeftRadius="20dp"
设置左上角的半径
android:topRightRadius="20dp"
设置右上角的半径
android:bottomLeftRadius="20dp"
设置右下角的半径
android:bottomRightRadius="20dp"
设置左下角的半径
padding:间隔可以设置上下左右四个方向的间隔<padding
android:bottom="10dp"
android:left="10dp"
android:right="10dp"
android:top="10dp"
/>
<!--
设置各个方向的间隔
-->
stroke:描边android:width="2dp"描边的宽度,android:color描边的颜色。
我们还可以把描边弄成虚线的形式,设置方式为:
android:dashWidth="5dp"
android:dashGap="3dp"
其中android:dashWidth表示'-'这样一个横线的宽度,android:dashGap表示之间隔开的距离
gradient:渐变android:startColor和android:endColor分别为起始和结束颜色,android:angle是渐变角度,必须为45的整数倍。
另外渐变默认的模式为android:type="linear",即线性渐变,可以指定渐变为径向渐变,android:type="radial",径向渐变需要指定半径android:gradientRadius="50"。
angle值对应的位置如图:solid:填充android:color指定填充的颜色
案例在drawable文件夹下面先定义两个xml文件:button_bg.xml的内容如下:<?xml
version="1.0"
encoding="utf-8"?>
<shape
xmlns:android="/apk/res/android"
>
<!--
填充
-->
<solid
android:color="#ff9d77"
/>
<!--
定义填充的颜色值
-->
<!--
描边
-->
<stroke
android:width="2dp"
android:color="#fad3cf"
/>
<!--
定义描边的宽度和描边的颜色值
-->
<!--
圆角
-->
<corners
android:bottomLeftRadius="5dp"
android:bottomRightRadius="5dp"
android:topLeftRadius="5dp"
android:topRightRadius="5dp"
/>
<!--
设置四个角的半径
-->
<!--
间隔
-->
<padding
android:bottom="10dp"
android:left="10dp"
android:right="10dp"
android:top="10dp"
/>
<!--
设置各个方向的间隔
-->
</shape>
button_pressed_bg.xml的内容如下:<?xml
version="1.0"
encoding="utf-8"?>
<shape
xmlns:android="/apk/res/android"
>
<!--
渐变
-->
<gradient
android:endColor="#FFFFFF"
android:gradientRadius="50"
android:startColor="#ff8c00"
android:type="radial"
/>
<!--
描边
-->
<stroke
android:dashGap="3dp"
android:dashWidth="5dp"
这里说明一点,在描边里面设置了dash参数,使得图形的边变成了虚线
android:width="2dp"
android:color="#dcdcdc"
/>
<!--
圆角
-->
<corners
android:radius="5dp"
/>
<!--
间隔
-->
<padding
android:bottom="10dp"
android:left="10dp"
android:right="10dp"
android:top="10dp"
/>
</shape>
在drawable文件夹下添加一个button.xml文件,内容如下:<?xml
version="1.0"
encoding="utf-8"?>
<selector
xmlns:android="/apk/res/android">
<item
android:drawable="@drawable/button_pressed_bg"
android:state_pressed="true"></item>
<item
android:drawable="@drawable/button_bg"></item>
</selector>
这个文件的意思以前讲过,normal(正常)情况下就显示button_bg,被press(按下)情况下就显示button_pressed_bg。
layout目录下的activity_main.xml的内容:<RelativeLayout
xmlns:android="/apk/res/android"
xmlns:tools="/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/button"
android:text="TestShapeButton"
/>
</RelativeLayout>
直接将background指定为drawable文件夹下的button.xml。
使用步骤第一步:首先在res目录下新建drawable文件夹
第二步:在drawable文件夹中创建xml文件android背景选择器selector用法android背景选择器selector用法selector可以设置的属性有:
android:state_pressed
如果是true,当被点击时显示该图片,如果是false没被按下时显示默认。
android:state_focused
如果是true,获得焦点时显示;如果是false没获得焦点显示默认。
android:state_selected
如果是true,当被选择时显示该图片;是false未被选择时显示该图片。
android:state_checkable
如果值为true,当CheckBox能使用时显示该图片;false,当CheckBox不能使用时显示该图片。
android:state_checked
如果值为true,当CheckBox选中时显示该图片;false,当CheckBox为选中时显示该图片。
android:state_enabled
如果值为true,当该组件能使用时显示该图片;false,当该组件不能使用时显示该图片。
android:state_window_focused
如果值为true,当此activity获得焦点在最前面时显示该图片;false,当没在最前面时显示该图片。
案例一个Button控件的背景设置为:
<?xmlversion="1.0"encoding="utf-8"?>
<selectorxmlns:android="/apk/res/android">
<itemandroid:state_pressed="true"android:drawable="@drawable/bg_selected">
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025延安某国企招聘(2人)笔试历年参考题库附带答案详解
- 2026芬兰林业加工企业竞争力发展对策研究报告书
- 2026芬兰林业产业行业市场深度调研及发展趋势与投资前景预测研究报告
- 2025北京容城容创投资有限公司招聘工作人员3人笔试历年参考题库附带答案详解
- 2025下半年四川事业单位教师医疗统招考试排名笔试历年典型考题及考点剖析附带答案详解
- 2026节能窗行业职业培训体系与人才需求报告
- 三维视觉识别在眼科疾病诊断中的效果
- 2026脑科学基础研究突破与神经疾病治疗应用前景报告
- 《大米市场营销方案》教学设计
- (北师大版)小学五年级数学上册《找质数》核心素养教学设计
- 长方形和正方形的周长与面积比较课件
- 河南双汇投资发展股份有限公司屠宰厂技改项目环评报告
- 隆化县新村矿业有限公司大乌苏沟超贫磁铁矿采矿权出让收益评估报告
- 中国民用航空飞行学院辅导员考试题库
- origin基本操作大全入门必备课件
- 金属非金属矿山安全标准化规范
- 附件4 《广东省数据经纪人管理规则(试行)》(征求意见稿)
- 医学影像处理-荧光素钠辅助脑胶质瘤手术体会
- GB/T 7253-2019标称电压高于1 000 V的架空线路绝缘子交流系统用瓷或玻璃绝缘子元件盘形悬式绝缘子元件的特性
- GB/T 16839.1-2018热电偶第1部分:电动势规范和允差
- Unit-10-The-Sad-Young-Me教学讲解课件
评论
0/150
提交评论