- 浏览: 23330 次
- 性别:
- 来自: 杭州
最新评论
-
ifoggy:
hety163 写道如果是在fragment中使用handle ...
处理"This Handler class should be static or leaks might occur" -
hety163:
如果是在fragment中使用handler呢?
处理"This Handler class should be static or leaks might occur"
文章列表
遇到需要将jar和so push到设备的情况,某些没有调整文件权限的设备可能会遇到
failed to copy ... Read-only file system 类似的提示。
对于root过的设备,可以按照如下的步骤修改文件的权限:
1.用 adb shell 命令进入到设备的文件系统;
2.用 su 命令切换到root用户(设备需要root);
3.用 mount -o remount,rw -t yaffs2 /dev/block/mtdblock0 /system 重新挂载文件系统(如果没有这一步,即使修改了system文件夹的权限,也不能push成功);
4.用 ...
Windows下搭建Android NDK开发环境,还真是件繁琐的事,主要原因是需要的工具插件不少。
1.Eclipse
通过android doc中给的链接安装好ADT、CDT插件,链接的话google搜索很多。
ADT插件中有一部分是用于android SDK管理的,另外一部分是用于NDK管理的,都装上。
CDT插件主要用于C/C++代码的开发,配合稍后介绍的MINGW,实现so的开发。
完成这一步,已经可以使用eclipse配合android SDK来开发android app。
2.安装MINGW
到MinGW的主页(http://www.mingw.org ...
Android开发中,Handler是使用非常频繁的类。
一种使用Handler的方式,是在Activity或者Service中声明一个成员变量并直接初始化:
private Handler mHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
// ...
}
};
这样的写法eclipse会给出一个leak的提示,以前一直没有太留意,在网上搜索之后,发现的确有可能出现内存泄漏的隐患,由于非静态 ...
Item2
:当构造方法中的参数列表太多时,考虑使用
builder
。
当一个类的构造方法有大量的(可选)参数时,通常考虑的方法有两种,一种是层叠的构造方法模式(
telescope constructor
),一种是
JavaBean
模式。
这两种方法都有各自的缺陷,层叠的构造方法可读性差且容易出错;
JavaBean
则会妨碍一个类成为不可变的类。
下面是一个使用
builder
的示例:
// Builder Pattern
public class Nutrit ...
Item1:考虑使用静态方法代替构造方法
通常客户端都是通过类的构造方法来获得一个类的实例,另外一种方式则是给该类添加一个静态的工厂方法(并非工厂模式),例如下面的方式:
public static Boolean valueOf(boolean b) {
return b ? Boolean.TRUE : Boolean.FALSE;
}
这样的做法有优点也有弊端
优点之一是静态方法可以有自己的方法名,从而让代码的可读性更好,也避免了重载的构造方法不便区分的缺点
优点之二是利用静态的构造方法,可以避免每次调用都新建一个类的实例,这样可以实现immutabl ...
最近在项目中遇到新的需求,就是在按钮在选按的时候需要将文字变为白色,但android默认的按钮颜色为黑色,之前也没有考虑过类似的问题。
通过doc文档,发现按钮文字的处理方式和背景的处理方式很相似,同样可以用一份selector文件来解决,然后在Button节点的textColor属性中引用这份文件,问题就迎刃而解了!
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" ...