我认为这个问题经常被问到,但是在我问完之后
bitmap.release;
bitmap = null;
在片段的 onDestroy 中,使用的内存与以前一样多。
片段:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
initializeViews();
croppedBitmap = BitmapFactory.decodeFile("/.../0001.jpeg");
imageView.setImageBitmap(croppedBitmap);
fabCreate.setOnClickListener(...); //never called
}
@Override
public void onDestroy() {
clearMemory();
super.onDestroy();
}
void clearMemory(){
fabCreate.setOnClickListener(null);
imageView.setImageBitmap(null);
imageView = null;
croppedBitmap.recycle();
croppedBitmap = null;
java.lang.System.gc();
}
答案 0 :(得分:1)