android,想在工具类中显示对话框,如何获取主activity的context

请教各位大神,如题,不知道工具类中如何调用主activity的context,谢谢... 请教各位大神,如题,不知道工具类中如何调用主activity的context,谢谢 展开
 我来答
卡卡西xl
2015-10-17 · TA获得超过1672个赞
知道答主
回答量:385
采纳率:88%
帮助的人:52万
展开全部
  在android中context可以作很多操作,但是最主要的功能是加载和访问资源。在android中有两种context,一种是 application context,一种是activity context,通常我们在各种类和方法间传递的是activity context。
比如一个activity的onCreate:
protected void onCreate(Bundle state) {
super.onCreate(state);

TextView label = new TextView(this); //传递context给view control
label.setText("Leaks are bad");

setContentView(label);
}
把activity context传递给view,意味着view拥有一个指向activity的引用,进而引用activity占有的资源:view hierachy, resource等。
这样如果context发生内存泄露的话,就会泄露很多内存。
这里泄露的意思是gc没有办法回收activity的内存。
Leaking an entire activity是很容易的一件事。
当屏幕旋转的时候,系统会销毁当前的activity,保存状态信息,再创建一个新的。
匿名用户
2015-03-03
展开全部
在调用工具类的函数的时候,把activity的context作为参数传递过去不久Ok了吗?
如你的工具类里面的函数可以这样定义啊
public static String getAvailableMemory(Context context){ …………}
然后再主类中这样调用
SystemInfoUtil.getAvailableMemory(this); 这样就不会报错了。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2015-03-03
展开全部
作为参数传进来不就好了吗
追问
直接传MainActivity.this要报错
追答
报什么错
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式