安卓学习日记--页面布局

LinearLayout:

项目 参数
orientation vertical(纵向布局),horizontal(横向布局)
gravity 父容器中的布局元素位置
layout_gravity 子控件在父容器中的位置
divider 分隔线(图片)也可以直接用View 空间直接实现分隔线
showDividers 设置分割线所在的位置,none(无),beginning(开始),end(结束),middle(每两个组件间)
layout_weight 权重,控件占页面布局比例(分配剩余空间)

RelativeLayout:相对位置布局

根据父容器定位 参数
layout_alignParentLeft 左对齐
layout_alignParentRight 右对齐
layout_alignParentTop 顶部对齐
layout_alignParentBottom 底部对齐
layout_centerHorizontal 水平居中
layout_centerVertical 垂直居中
layout_centerlnParent 中间位置
根据兄弟容器定位 参数
layout_toLeftOf 放置于参考组件的左边
layout_toRightof 放置于参考组件的右边
layout_above 放置于参考组件的上方
layout_below 放置于参考组件的下方
layout_align Top对齐参考组件的上边界
layout_alignBottom 对齐参考组件的下边界
layout_alignLeft 对齐参考组件的左边界
layout_alignRight 对齐参考组件的右边界

原因分析:

提示:这里填写问题的分析:
例如:Handler 发送消息有两种方式,分别是 Handler.obtainMessage()和 Handler.sendMessage(),其中 obtainMessage 方式当数据量过大时,由于 MessageQuene 大小也有限,所以当 message 处理不及时时,会造成先传的数据被覆盖,进而导致数据丢失。


解决方案:

提示:这里填写该问题的具体解决方案:
例如:新建一个 Message 对象,并将读取到的数据存入 Message,然后 mHandler.obtainMessage(READ_DATA, bytes, -1, buffer).sendToTarget();换成 mHandler.sendMessage()。

上一篇:Handler到底是怎么实现子线程的Message到主线程下被处理的?


下一篇:一张图看懂大牛直播SDK的模块化组合