奔跑的肥猪

导航

2011年8月11日 #

如果对象的类型为T1,就做某件事;如果对象的类型为T2,就做另外一件事,请赏自己一个巴掌

摘要: 前人的至理名言,看看之前我写的代码,应该被赏了n个巴掌了吧。看看下面的例子:1.被赏巴掌的例子package com.tn.salary;public interface Employ { int getSalary();}package com.tn.salary;public class Manager implements Employ { public int getSalary() { return 5000; } public int getBonus() { return 300; }}package com.tn.salary;public class Programmmer 阅读全文

posted @ 2011-08-11 13:53 布兜兜 阅读(224) 评论(0) 推荐(0) 编辑

如何有效遍历集合中的对象

摘要: 今天看了看practical java 中不要使用enumeration 或者iteration来便利对象,自己亲自试了一下,发现如果如果针对小的数据集,效率问题不是很明显,对于大的数据集还有有一些差距的。由测试结果可以看出虽然loop类比其他遍历方法少用一次查询方法,但是对于小的数据集,其结果比其他的遍历方法还要慢,但数据集越大loop的优势越明显。1. 对应的log类package com.tn.app.log;public class Log { private long startmemory; private long starttime; private static Log lo 阅读全文

posted @ 2011-08-11 13:09 布兜兜 阅读(640) 评论(0) 推荐(0) 编辑

2011年7月14日 #

一个新的获取对象实例的方法

摘要: 工厂模式提供方法来创建对象,但是在factory中看到那一堆if/else就比较头痛,心想是不是可以让相关的对象统一继承一个接口,将key 值和对象放在一个map里面,取对象是直接从map里面取呢?1. 首先建立一个action类package com.fp.app;import java.util.HashMap;public class Action { private final HashMap<String, BookDetailAction> myIdToActionMap = new HashMap<String, BookDetailAction>(); 阅读全文

posted @ 2011-07-14 10:42 布兜兜 阅读(457) 评论(0) 推荐(0) 编辑

2011年7月13日 #

如何写好代码

摘要: 最近在审核代码,发现有很多问题,把这些问题一一列举出来,算是自己的一个警示。算是一个系列把。1. 不要直接调用某个class中的变量,需要提供一个方法给客户端调用。比如在某个class里面有errormap,定义如下:A:static { map.put("0", R.string.code0); map.put("2001", R.string.code2001); map.put("2002", R.string.code2002); map.put("2003", R.string.code2003); ma 阅读全文

posted @ 2011-07-13 17:53 布兜兜 阅读(516) 评论(0) 推荐(0) 编辑

android如何在网络中获取数据

摘要: android获取数据无非通过get/post请求建立连接,后拿到response,根据解析。具体实现如下:1.private void getXmlFromServer() { try { HttpHeadUtil util = new HttpHeadUtil(context); HttpResponse response = (requestBody == null || "".equals(requestBody)) ? util.getHttpResponse(action, param) : util.postHttpResponse(action, param 阅读全文

posted @ 2011-07-13 17:06 布兜兜 阅读(1158) 评论(0) 推荐(0) 编辑

android shell脚本使用

摘要: android 底层驱动实际linux, linux中大量使用了shell。那 shell到底是什么东西呢?个人理解相当于windows中的cmd,但是shell很强大,如果你能熟练使用shell,在android开发中如虎添翼。下面就android常用的shell进行一下说明:1. cd (change directory)如: cd / 跳转到根目录 cd ~ 跳转到用户所在的目录2. ls (list)显示目录结构3. chmod 777 path在开发过程中,如果发现文件不能读写,首先应该想到是否给user权限,可以通过该命令试试看改变目录属性,如果目录下面还有子目录,加上-R4. c 阅读全文

posted @ 2011-07-13 15:39 布兜兜 阅读(3901) 评论(0) 推荐(1) 编辑

android如何从网络中获取数据

摘要: android 因为整合了apache,所有支持所有的http请求,但作为嵌入式的终端,不仅需要支持get/post这种请求,还需要支持不同的APN(CMNET/CMWAP),总得来说只要能连上了一个APN,其他网络都是可以调通的,第一需要底层设置相关的参数(host, username/passwd, ip)。第二如果需要代理的,如cmwap需要添加相应的proxy,如下所示: if (Constant.IS_CMWAP_APN) { httpclient.getCredentialsProvider().setCredentials(new AuthScope(Constant.proxy 阅读全文

posted @ 2011-07-13 13:44 布兜兜 阅读(1146) 评论(0) 推荐(1) 编辑

Android如何从网络中获取图片

摘要: android中内置apache,可以通过该组件从网络中获取相关的资源,图片也是一种资源,在图片获取中应该注意二点:1. 最好使用Buffered***,因为这样的话数据不是一个一个字节这样读取,而读了一段数据后,放在一个内存中,然后在从内存中拿,这样会比较快2. 如果图片url 中含有中文字符,需要encode url,因为很多服务器中文字符是不认识的。 imageUrl = imagePrefix + URLEncoder.encode(imageName, "utf-8"); public static synchronized Bitmap getOnlineBoo 阅读全文

posted @ 2011-07-13 10:48 布兜兜 阅读(920) 评论(0) 推荐(1) 编辑

Android如何异步获取图片

摘要: 在页面跳转过程中,如果target activity中包含有图片,可以在target activty的oncreate中启动一个线程去拿取图片,在target activity onstop是,可以结束该线程。笔者曾经做过测试,如果在跳转之前那图片的话,时间是跳转之后拿图片的1.5倍。推荐使用android中内置线程AsyncTask,因为该线程和thread最大的不同是可以随时stop该线程,而不像thread一旦run起来,内置方法里面根本没有办法取消它。if (updateImageTask != null) { if (updateImageTask.getStatus() == As 阅读全文

posted @ 2011-07-13 10:41 布兜兜 阅读(919) 评论(0) 推荐(0) 编辑

2011年7月12日 #

Android中自定义控件

摘要: 就像其他开发平台一样,android也可以自定义控件,如下所示,定义了四个自定义控件:翻页/menu/list/跳页那自定义控件到底如何实现的呢?一般是继承某个view,重写某些方法,然后再layout中引用即可。在实践过程发现如下三个问题:1. 每个自定义控件都有特别的需求,比如跳页控件,点击button时button变黑,移开时又恢复原来状态。有二种方法可以实现:A:1. 同在在layout 设置background属性,然后在drawable中实现它<Button android:id="@+id/alert_bt_submit" android:layout_ 阅读全文

posted @ 2011-07-12 18:14 布兜兜 阅读(7379) 评论(0) 推荐(0) 编辑