ray*_*man 7 android android-emulator
在我的应用程序中,我有一个非活动对象,它的角色是经理类.很多时候我需要将"源活动"传递给方法作为该管理器类的参数,以便对该活动进行一些操作.
例如,让我们假设我们有MyActivity,它必须做一些吐司.所以我有这个名为MyManager的经理类,我有这个方法
raiseToast(Activity sourceActivity) {
Toast.makeText(sourceActivity, demo, Toast.LENGTH_LONG).show();
}
Run Code Online (Sandbox Code Playgroud)
从Myactivity类我们以这种方式调用该方法:
MyManager manager=new MyManager();
manager.raiseToast(MyActivity.this);
Run Code Online (Sandbox Code Playgroud)
它工作正常.
我在这里问的是,这是将Activity作为参数传递给非活动对象的正确方法吗?我在真实设备(而不是模拟器)上有内存泄漏,我想知道这是否也会导致任何原因?
谢谢Idan.
您可以尝试传递应用程序上下文,即活动上的 getApplicationContext() 。为什么有这个 MyManager 对象?您可以直接从活动中举起吐司,而无需在单独的班级中进行。将您的方法 raiseToast() 移至活动主体并调用它。
编辑:请阅读http://android-developers.blogspot.com/2009/01/avoiding-memory-leaks.html
| 归档时间: |
|
| 查看次数: |
10791 次 |
| 最近记录: |