1. 无论是多少个layout文件,不同文件之间都要完全使用不同的id号,否则有时候相同的id号导致奇奇怪怪问题。
项目中,使用了onClick的监听,用来监听TextView,因为id号与另一个layout里的重复,导致监听事件多次发生。
2. 图片资源是资源消耗大户,要谨慎处理不用的资源。
项目中,加载前内存消耗为50MB,加载一个800K左右图片,内存猛增到160MB(MI6、AS3.0测试环境@20180905)。如果使用下面的代码进行清除,能达到一定的效果。(注意:该方法只清除只用一次的图片,清除后多次调用资源可能会出现Graphic的异常)
public static void releaseImageViewResouce(ImageView imageView) {
if (imageView == null) return;
Drawable drawable = imageView.getDrawable();
if (drawable != null && drawable instanceof BitmapDrawable) {
BitmapDrawable bitmapDrawable = (BitmapDrawable) drawable;
Bitmap bitmap = bitmapDrawable.getBitmap();
if (bitmap != null && !bitmap.isRecycled()) {
bitmap.recycle();
}
}
}