Activity.this和this.getApplictionContext的区别
来源:互联网 发布:搞怪视频软件 编辑:程序博客网 时间:2024/06/07 19:06
Activity.this和this.getApplictionContext的区别
如果需要当前窗体弹出对话框时:如
AlertDialog.Builder builder = new AlertDialog.Builder(this);
这里要求传递的参数就是一个context,在这里传入的this究竟指的是Activity.this和还是this.getApplictionContext呢?
其实这里的this指的是Activity.this,这是为什么呢?首先分析两者的区别:1.Activity.this指代的是当前所在的Activity的this,是这个Activity的上下文。2.this.getApplictionContext指的是当前的应用,,就表示应用程序的生命周期。
所以这里使用this.getApplicationContext(),是不对的。
AlertDialog对象是依赖于一个View的,而View是和一个Activity对应的。
这里涉及到一个生命周期的问题,
this.getApplicationContext()取的是这个应用程序的Context,
Activity.this取的是这个Activity的Context,
这两者的生命周期是不同的,前者的生命周期是整个应用,后者的生命周期只是它所在的Activity。
而AlertDialog是属于Activity的,在Activity销毁的时候它也就销毁了,不会再存在;
但是,如果传入this.getApplicationContext(),就表示它的生命周期是整个应用程序,这显然超过了它的生命周期了。
所以,在这里我们只能使用Activity的this。
0 0
- Activity.this和this.getApplictionContext的区别
- this 和context和 getApplictionContext的区别
- Activity.this和this的区别联系
- getApplication和Activity.this的区别
- Activity.this和getApplicationContext()的区别
- Activity.this 和getApplicationContext()的区别
- getApplicationContext和Activity.this的区别
- this和$(this)的区别
- this和 $(this)的区别
- Android this与Activity.this的区别
- Activity.this 与this的区别
- getApplicationContext()和Activity.this区别
- !getApplicationContext()和Activity.this区别
- Activity.this 和 Applicationcontext 区别。
- getApplicationContext()和Activity.this区别
- this和$(this)区别
- getApplicationContext和Activity.this两种上下文的区别
- JQuery 中this 和 $(this) 的区别
- Unhandled exception type ParseException
- android 实现服务器连接获取数据和传递数据(1)
- Android:高仿QQ头像截取升级版
- 对不起,Ubuntu14.04 出现了内部错误。
- javascript图像处理框架
- Activity.this和this.getApplictionContext的区别
- const常量与define宏定义的区别
- 如何解决eclipse项目名称更改导致项目无法启动
- Sigmoid函数
- 生成验证码代码
- 软件项目经理怎么做?
- http请求过程
- Ubuntu设置固定ip
- 项目经理常用软件大全