android– 视图引用显示它的活动是否安全?

android– 视图引用显示它的活动是否安全?,第1张

概述我已经扩展了View并将其传递给了我的Activity实例,因此视图可以访问一些成员变量和方法.但是现在我认为这可能是一个潜在的内存泄漏,因为即使在Activity被销毁之后,它仍然会引用成员变量中的视图,反之亦然.所以垃圾收集器可能永远不会清理它们.但是,我在一些GoogleAPI演示和示例

我已经扩展了VIEw并将其传递给了我的Activity实例,因此视图可以访问一些成员变量和方法.

但是现在我认为这可能是一个潜在的内存泄漏,因为即使在Activity被销毁之后,它仍然会引用成员变量中的视图,反之亦然.所以垃圾收集器可能永远不会清理它们.

但是,我在一些Google Api演示和示例中看到过,他们已将Activity作为侦听器传递给VIEw.

解决方法:

这很好,请记住,您使用其构造函数以编程方式创建的任何普通VIEw都将Context作为其参数 – 通常您给构造函数的Context就是这个,或者Activity本身.所以你的VIEw已经引用了它的Activity.您也可以使用其getContext()方法在VIEw类中获取它.

当Activity被销毁时,它将保留在内存中,直到GC可以删除它.但作为其onDestroy方法的一部分,它将对其包含的任何视图的引用设置为null,依此类推.然后GC可以安全地删除其所有组件视图.完成后,活动没有任何引用,另一个GC通道可能会删除它.

总结

以上是内存溢出为你收集整理的android – 视图引用显示它的活动是否安全?全部内容,希望文章能够帮你解决android – 视图引用显示它的活动是否安全?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1115400.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存