摘要: 面向对象设计原则是OOPS(Object-Oriented Programming System,面向对象的程序设计系统)编程的核心,但大多数Java程序员追逐像Singleton、Decorator、Observer这样的设计模式,而不重视面向对象的分析和设计。甚至还有经验丰富的Java程序员没有听说过OOPS和SOLID设计原则,他们根本不知道设计原则的好处,也不知道如何依照这些原则来进行编程。众所周知,Java编程最基本的原则就是要追求高内聚和低耦合的解决方案和代码模块设计。查看Apache和Sun的开放源代码能帮助你发现其他Java设计原则在这些代码中的实际运用。Java Develo 阅读全文
posted @ 2012-05-26 12:56 Qiengo 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 当我开始学习Java编程时,我不知道什么是堆内存或堆空间,我甚至不知道当对象创建时,它们被放在了哪里。当我开始正式写一些程序后,我会经常遇到java.lang.outOfMemoryError的报错,之后我才开始关注什么是堆内存或者说堆空间(heap space)。对大多数程序员都经历过这样的过程,因为学习一种语言是非常容易来的,但是学习基础是非常难的,因为没有什么特定的流程让你学习编程的每个基础,使你发觉编程的秘诀。对于程序员来说,知道堆空间,设置堆空间,处理堆空间的outOfMemoryError错误,分析heap dump是非常重要的。这个关于Java堆的教程是给我刚开始学编程的兄弟看的 阅读全文
posted @ 2012-05-26 12:55 Qiengo 阅读(539) 评论(0) 推荐(1) 编辑
摘要: bluetooth : 蓝牙协议栈,官网<http://www.bluez.org/>dhcpcd : dpkg 配置包,官网<http://roy.marples.name/projects/dhcpcd>embunit : 一个嵌入式的单元测试工具。freetype : linux上广为使用的字体解析库。iptables : 一个IPv4的包过滤器。基本网络库。libxml2 : 大名鼎鼎得xml解析库。opencore : 多媒体播放引擎架构库。官网<http://www.opencores.org>speex : Speex是一套专门用于压缩声音的库 阅读全文
posted @ 2012-05-26 12:51 Qiengo 阅读(386) 评论(0) 推荐(0) 编辑
摘要: android:allowTaskReparenting用法<application android:allowTaskReparenting="true/false"></application>是否允许activity更换从属的任务,比如从短信息任务 切换到浏览器任务。用来标记Activity能否从启动的Task移动到有着affinity的Task(当这个Task进入到前台时)—— “true”,表示能移动,“false”,表示它必须呆在启动时呆在的那个Task里。如果这个特性没有被设定,设定到<application>元素上的all 阅读全文
posted @ 2012-05-26 12:47 Qiengo 阅读(326) 评论(0) 推荐(0) 编辑
摘要: Alt + / 自动补全,对java和xml都有效,非常方便Alt +上/下键 上/下移代码Ctrl + Alt +下键 复制一行代码(默认会与win7系统快捷键冲突,需更改)Ctrl + Shift + Alt 点击layout名称即可跳转的xml文件中(超方便)Ctrl + Shift + O,格式化imports顺序并且删除多余的importsCtrl +Shift+ F 格式化当前的代码,包括java和xmlCtrl + O 在当前编辑的文件快速定位一个方法和变量Ctrl + q 回到上次编辑的位置Alt +左右箭头,在浏览过的页面中前后翻Alt +Shift + R对选光标处的函数或 阅读全文
posted @ 2012-05-26 12:44 Qiengo 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 众所周知Android应用开发中不能在UI线程中做耗时的操作,否则就会弹出烦人的ANR窗口。应用开发中如果需要加载来自网络、磁盘或其他非内存中图片资源时,因加载时间会受到其他因素(如磁盘、网络、图片大小、CPU等等)的影响,很容易产生耗时操作。所以在进行类似操作时要避免在UI线程中进行。今天就和大家分享一下如何通过AsyncTask异步加载图片和怎么处理多线程并发问题。如何使用 AsyncTask加载图片?通过AysncTask可以很容易的在启动后台线程加载资源,然后将结果返回到UI线程中。使用它时,需要创建它的子类并实现相应的方法,如下是一个通过AysncTask和decodeSampled 阅读全文
posted @ 2012-05-26 12:30 Qiengo 阅读(310) 评论(0) 推荐(0) 编辑
摘要: 我们知道android的TextView控件支持一些简单的html富文本,如<br><font><u>等,但是具体是哪些标签呢?其实查看Html类的源码就可以知道了。private void handleStartTag(String tag, Attributes attributes) { if (tag.equalsIgnoreCase("br")) { // We don't need to handle this. TagSoup will ensure that there's a </br> fo 阅读全文
posted @ 2012-05-26 12:22 Qiengo 阅读(481) 评论(0) 推荐(0) 编辑
摘要: 由于前面开发数据操作类,所以利用反射,封装了一个BaseDao,本来在平常的时候,调试都没有出问题,可是知道用了Proguard混淆以后,就出现各种错误,最开始是类型转换错误,到了后面就变成空指针异常,各种错误,并且以及发布出去,手机上不调试,所以就只能把报错信息保存到文件中,每次查看。混淆以后,所有方法名都出了错误,每次看报错信息,连方法都难找到,所说有属性对应的txt,但是有些混淆的方法名是一模一样,所以找起来相当麻烦。Frequently Asked Questions:1.类型转换错误因为我用的泛型,所以在调用某些方法的时候,会出现这种错误,后面在混淆配置文件加了一个过滤泛型的语句,如 阅读全文
posted @ 2012-05-26 12:12 Qiengo 阅读(510) 评论(0) 推荐(0) 编辑
摘要: 1. 1 AnimationSet exitTransition = new AnimationSet(true); 2 exitTransition.setDuration(1000); 3 int xoffset=getResources().getDimensionPixelSize(R.dimen.list_width); 4 int yoffset=getResources().getDimensionPixelSize(R.dimen.topbar_height); 5 float xscale=(mShelvesVi... 阅读全文
posted @ 2012-05-26 10:53 Qiengo 阅读(194) 评论(0) 推荐(0) 编辑