我创建了一个GalleryView和ImageView,当在图库中单击某个项目时,它会显示更大的图像.我使用下面的代码来实现ImageAdapter:
public ImageAdapter(Context c)
{
context = c;
TypedArray a = obtainStyledAttributes(R.styleable.gallery1);
itemBackground = a.getResourceId(R.styleable.gallery1_android_galleryItemBackground, 0);
a.recycle();
}
Run Code Online (Sandbox Code Playgroud)
当我删除语句GalleryView
时没有变化,应用程序像以前一样正常运行,但我读到的每个地方都必须回收typedArray.当我的应用程序运行方式没有变化时,该方法的用途是什么ImageView
.
任何人都可以详细解释我.谢谢.
Vin*_*nay 37
这一点类似于用C语言清除指针的想法(如果你熟悉它).它用于使与"a"相关联的数据准备好进行垃圾收集,因此当不需要时,内存/数据不会低效地绑定到"a".在这里阅读更多.重要的是要注意,除非你真的重用"a",否则这不是必需的.如果不再使用该对象,GC应自动清除此数据.但是,TypedArray不同的原因是因为TypedArray必须将其他内部数据(称为StyledAttributes)返回到TypedArray以供以后重用.在这里阅读.
归档时间: |
|
查看次数: |
19445 次 |
最近记录: |