当我尝试使用非静态内部 Loader
类时,出现以下运行时错误:
Object returned from onCreateLoader must not be a non-static inner member class
这个限制有什么意义?
最佳答案
如 this blog post on loaders 中所述,它们专门设计用于承受旋转变化(这通常会导致 Activity 被破坏并重新创建)。由于非静态内部类包含对其包含实例的隐式引用(即内部类将具有对第一个 Activity 的引用),因此这保证会在任何配置更改时产生内存泄漏。
关于android - 为什么Loaders不能是非静态内部类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31999869/