天天看点

为什么需要在TypedArray后调用recycle

当我们没有在使用typedarray后调用recycle,编译器会提示“this typedarray should be recycled after use with #recycle()”。

官方的解释是:回收typedarray,以便后面重用。在调用这个函数后,你就不能再使用这个typedarray。

在typedarray后调用recycle主要是为了缓存。当recycle被调用后,这就说明这个对象从现在可以被重用了。<code>typedarray</code> 内部持有部分数组,它们缓存在<code>resources类中的静态字段中,这样就不用每次使用前都需要分配内存。你可以看看<code>typedarray.recycle()</code>中的代码:</code>

为什么需要在TypedArray后调用recycle
为什么需要在TypedArray后调用recycle

参考链接

http://stackoverflow.com/questions/13805502/why-do-you-have-to-recycle-a-typedarray

http://developer.android.com/reference/android/content/res/typedarray.html#recycle%28%29

本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

转载:http://www.cnblogs.com/kissazi2/p/4049982.html

继续阅读