Android 编译资源xml文件报错问题总结

一、编译资源xml问题:
1. XML parser error: not well-formed
(1) 检查是否存在 b>…. /b> 需修改为:
(2)检查是否存在如下情况

(3) 检查是否存在\ xx 类情况,改为\xx,中间不能有空格
2. XML parser error: entity not defined
检查是否存在& amp等填充符之间有空格的情况 需修改为: &amp
3. 转义字符在xml中的转换
1) %s -> %1$s
2)< < 小于号
3)> > 大于号
4)& & 和
5)' ’ 单引号
6)" ” 双引号
二、drawable xml可实现功能
1.布局或按钮等圆角钝化
1) 标签
2)android:shap = ”rectangle”属性
3) 标签中的 radius类属性实现钝化
2.button点击变化
1)标签
2) 中的 android:drawable 设置图片 android:state_pressed属性表示是点之前还是点之后 android:state_enabled 属性表示是否使能状态
3.画一条分割线
1)标签
2)android:shap = “line”属性
3)设置颜色等
4. 实现dialog等渐变阴影
android:color=”#ffffff”->设置背景为白色
anddroid:comor=”#00ffffff” ->设置阴影为黑色,背景为白色

三、关于view类构造函数
1)int defStyleAttr
参数含义:在当前包含了一个引用到为TypedArray提供默认值的样式资源的theme中的一种属性。可以为0,但是为0的时候就不会再去寻找默认的。(注:这里的默认也就是defStyleRes)
defStyleAttr是定义在theme中的一个引用,这个引用指向一个style资源,而这个style资源包含了一些TypedArray的默认值。
2)AttributeSet attrs
AttributeSet 表示从layout文件中直接为这个View添加的属性的集合
3)属性的优先级:
xml > style > defStyleAttr > defStyleRes > theme
三、位置方法区别
1)showAtLocation (View view,int gravity, int xOff, int yOff)
第一个参数:这个view是要能获取到window唯一标示的(也就是只要能获取到window 标示,view是什么控件都可以),应该是标示这个popWindown添加到哪个window里面,对控制popWindown出现位置没有影响;
第二个参数:请记住屏幕原点是屏幕的左上角。Gravity.TOP | Gravity.RIGHT指的就是屏幕的右上角,那么popWindown的中心点坐标是(屏幕宽,0)。popWindown默认是在屏幕的中间,也就是Gravity.LEFT表示popWindown的中心点坐标是(0,1/2屏幕高);
第三、四个参数:偏移量是以第二个参数为基准点的,偏移量的方向与第二个参数有关。Gravity.TOP | Gravity.RIGHT,以屏幕右上角为原点
注意:这个偏移量可以是正的,也可以是负的。无论偏移多大,pw是不会跑出屏幕。具体往轴的那个方向
偏移,跟第二个参数有关,对于Gravity.CENTER的情况,偏移量负表示往轴的负方向,正往轴的正方向
2)showAsDropdown(View view, int xOff, int yOff)
以view的左下角为原点,向X轴正方向偏移xOff个像素,Y轴方向偏移yOff个像素。
注意:这个偏移量可以是正的,也可以是负的。无论偏移多大,pw是不会跑出屏幕。

猜你喜欢

转载自blog.csdn.net/zhiwenwei/article/details/80592778
今日推荐