android– 将Activity或Context传递给其他实例

android– 将Activity或Context传递给其他实例,第1张

概述你能告诉我最好的做法是将活动或上下文传递给其他实例(;)但…,>最好通过什么?活动或背景>将活动视为全局(公共静态活动活动)是个好主意here是我的代码.你会改变什么?(基于良好的Android实践)解决方法:将Activity传递给另一个不特别需要Activity对象的对象通常是个坏主意.Activi

你能告诉我最好的做法是将活动或上下文传递给其他实例(;)

但…,

>最好通过什么?活动或背景
>将活动视为全局(公共静态活动活动)是个好主意

here是我的代码.你会改变什么? (基于良好的AndroID实践)

解决方法:

将Activity传递给另一个不特别需要Activity对象的对象通常是个坏主意. Activity扩展了Context,因此它可以满足需要Context的方法.

在您的情况下,您可以从传递给方法的VIEw中获取Context.但是,如果您需要将Context用于其他目的,则应避免传递Activity并执行类似Activity.getApplicationContext()的 *** 作.

这样做的原因是,如果将活动传递给Activity的对象的生命长于活动,则对Activity的引用将阻止AndroID执行正确的垃圾收集(GC)并消耗不必要的内存.这称为“内存泄漏”.

编辑:

要处理需要调用Activity.findVIEwByID()的情况,请记住这些事项.首先,这是一个VIEw方法(http://developer.android.com/reference/android/view/View.html#findViewById(int)),所以一定要从正确的视图中调用它.

其次,如果您需要来自活动的视图,则应将其作为WeakReference传递

总结

以上是内存溢出为你收集整理的android – 将Activity或Context传递给其他实例全部内容,希望文章能够帮你解决android – 将Activity或Context传递给其他实例所遇到的程序开发问题。

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

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

原文地址: https://www.outofmemory.cn/web/1099806.html

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

发表评论

登录后才能评论

评论列表(0条)

保存