布局管理器
大小用dp; 字体用sp
线性布局 与 相对布局是可以嵌套使用的,根据实际需求,灵活使用。
1、通用属性
# 大小相关
layout_width="100dp":宽度
layout_height="200dp":高度
background="#FFFFFF":背景颜色
layout_margin:距外部元素的距离;
layout_padding:距内部元素的距离
# 内边距相关
padding="20dp":内边距20dp,上下左右都是这么多
paddingLeft="20dp":左边内边距20dp
paddingRight="20dp":右边内边距20dp
paddingTop="20dp":顶部内边距20dp
paddingBottom="20dp":底部内边距20dp
# 外边距相关
layout_marginLeft="15dp":距左边的距离
layout_marginRight="15dp":距右边的距离
layout_marginBottom="20dp":距底部的距离
layout_marginTop="20dp":距顶部的距离
2、线性布局 LinearLayout
通过orientation
属性确定布局方向;
# 方向相关
orientation="horizontal":水平,竖直是vertical
# 设置子元素的权重
layout_width="0dp":将宽设为0
layout_weight="1":此子元素的多少。
# 设置子元素在父类中的位置
gravity="center":居中。内部元素的排列方式
3、相对布局 RelativeLayout
# 相对位置
layout_below = "":在谁的下面
layout_toLeftOf="":在谁的左边
layout_toRightOf = "" :在谁的右边
# 对齐方式
layout_alignBottom="":跟谁的底部对齐
layout_alignParentBottom="true":跟父控件的底部对齐
Activity Fragment
一个界面需要有一个Activity
Fragment必须依赖于Activity,它不能独立存在
基于回调的事件处理机制
先回调控制自身的,后执行activity的;
return false:事件可以继续传播;
监听优先于回调;
dispatchTouchEvent()->setOnTouchListener->onTouchEvent; 只有return为false才会向下级传播;
OntouchListener(在EventActivity中)在onTouchEvent(在MyButton中)之前执行的;