出现问题肯定是某个xml文件有错误
android:R文件不能重新生成、或R文件中id、string等不能识别问题
1.先看main.xml等布局中是否有不存在的资源,如@drawble/btn,btn.png不存在就会出问题
2.string.xml比较容易忽略,注意记得用Eclipse在创建values下的xml文件创建value值时不要复制粘贴,因为经常会把字符串复制到xml文件的最前面,我也不知道这是为什么。
3.一定要注意所有的settings.xml中theme是否都存在,用eclipse将项目clean以后这些apptheme的parent中的那个theme基本上就会被清除找不到了。
确保所有的xml文件都没有错误后,validate或refresh或appTools->fix properties就可以重新生成R文件了
4.新版本的Eclipse中新建项目的时候将minium选择4.0以上就不会生成那个样式项目,否则为了删掉那个样式项目要改很多东西有时候还不一定改的好
浮点数很耗时间,牛人Gray = R*0.299 + G*0.587 + B*0.114
Gray = (R*299 + G*587 + B*114 + 500) / 1000
Gray = (R*30 + G*59 + B*11 + 50) / 100
Gray = (R*19595 + G*38469 + B*7472) >> 16
Gray = (R*38 + G*75 + B*15) >> 7
AsyncTask注意事项
1.注意Task的实例必须在UI thread中创建
2.execute方法必须在UI thread中调用
3.该task只能被执行一次,否则多次调用时将会抛出异常
犯过的错误,谨记再犯
1.finViewById进行类型转换的时候类型错误
2.eclipse中看不到Log.d等的信息,原因是我用的华为手机,需要对手机进行设置才能看到,http://hi.baidu.com/windgoing/item/507be1a9ac067d2d8919d3ea
3.在继承onDestroy()时忘记了加super.onDestroy()
4.不同xml中出现了相同的id,用finViewById会找不到正确的资源,程序会直接强制退出
5.经常忘记在AndroidManifest.xml中注册新加的Activity
页面布局:
1.用fill_parent,支持所有版本,真不知道是怎么想的match_parent是2.3才支持的,所以match_parent相当于没用啊,用这个干什么
2.LinearLayout和RelativeLayout都要用,以前还只用RelativeLayout,最好页面最外面用LinearLayout
经常忘记了一些属性怎么设置,可以先将=""删掉,再输入=就会有提示
3.背景都用xml定义,放到drawable中,颜色写到color.xml中,尺寸写到dimens.xml中
drawable的优先级:先是在drawable文件夹中寻找xml文件,再到drawable-hdpi中查找图片
在drawable文件夹中可以定义各种按钮动作,以及背景形状等等
为了防止拉伸变形,将图片修改成为Nine-Pacth,以.9为后缀名的文件,工具打开方式为:sdk路径/tools/draw9patch.bat 其实就是在原有的图片周围画上黑线,上边和左边的黑线是代表可以拉伸的位置,可以断开;右边和下边的黑线是文本内容可以显示的地方,不画的情况下内容可以显示在图形的任意地方,如果画的画注意黑线是不能断开的。
将所有的尺寸大小定义在values->dimens.xml文件中
如: <dimen name="comment_tree_layout_width">60dip</dimen>
使用时为 android:layout_width="@dimen/comment_tree_layout_width"
将一些通用的样式可以定义在values->styles.xml文件中,可以精简很多代码
如: <style name="service_process_layout">
<item name="android:layout_marginTop">20dip</item>
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">60dip</item>
</style>
使用时为style="@style/service_process_layout" 注意style前面没有加android:
将所有字符串放到values->strings.xml文件中
将所有的颜色值定义在values->color.xml中
所有的动画定义到anim文件夹中,比如页面从左边到右边过渡抽屉式弹出
以后为了适应尺寸大小和语言,只需要将dimens.xml和strings.xml复制到相应的尺寸文件夹和语言文件夹中
,将对应的大小和文字进行相应的修改即可。