大家好,这一讲我们来介绍下Android中Context
一、课程目标:
了解Android中的Context

二、重点难点:
观察Context的实现

三、考核目标:
Context在Android中的作用 , Context的实现

四、课后练习:
研究清楚Context的实现研究清楚Context的实现
l Java Context的回顾:
1)JNDI的一个类javax.naming.InitialContext,它读取JNDI的一些配置信息,并内含对象和其在JNDI中的注册名称的映射信息。请看下面的代码
InitialContext ic=new InitialContext();
2)再来看看下面Spring中最常见的几句代码。ApplicationContext 是内含configuration.xml配置文件的信息,使得可以通过getBean用名称得到相应的注册对象。
ApplicationContext ctx= new FileSystemXmlApplicationContext("configuration.xml");
从上面的代码,我很能体会到Context所代表的意义:公用信息、环境、容器....。所以我觉得Context翻译成上下文并不直观,按照语言使用的环境,翻译成“环境”、“容器”可能更好。


把Context翻译成“上下文”只是不直观罢了,不过也没大错。我们来看看中文的“上下文”是什么意思。我们常说听话传话不能“断章取义”,而要联系它的“上下文”来看。比如,小丽对王老五说“我爱你”,光看这句还以为在说情话呢。但一看上下文--“虽然我爱你,但你太穷了,我们还是分手吧”,味道就完全变了。从这里来看“上下文”也有“环境”的意思,就是语言的环境。
l Context到底是什么?它的作用是:
Context字面意思上下文,位于framework package的android.content.Context中,其实该类为LONG型,类似Win32中的Handle句柄,很多方法需要通过Context才能识别调用者的实例,比如说Toast的第一个参数就是Context,一般在Activity中我们直接用this代替,代表调用者的实例为Activity,而到了一个button的onClick(View view)等方法时,我们用this时就会报错,所以我们可能使用ActivityName.this来解决,主要原因是因为实现Context的类主要有Android特有的几个模型,Activity、Service以及BroadcastReceiver。


常规需要Context实例的方法主要有各种Service实现的类,比如说SensorManager在实例化时需要getSystemService(String)方法就必须由Context的实例执行,还有一些私有的文件系统I/O比如说openFileInput以及常用的Toast的makeText方法。

本讲对Android中Context的介绍,下一讲将进入Log,内容预告:AAF110426_Log打开android大门,敬请期待。

本课视频地址:http://www.tudou.com/programs/view/pQ0ZXjExMz8/ (土豆网)
课程下载地址:http://www.verycd.com/topics/2900036/ (VeryCD电驴)
作者博客:http://www.mobidever.com/forum.php (Sundy-Android开发联盟)

更多相关文章

  1. 自定义tabhost实现
  2. 【Android学习入门】Android中activity的启动模式
  3. 玩转FragmentTabHost,实现底部导航栏
  4. Android(安卓)一些网址记录
  5. Android(安卓)Thread 介绍与实例
  6. 系出名门Android(2) - 布局(Layout)和菜单(Menu)
  7. Android群英传第四章笔记·ListView使用技巧
  8. Android(安卓)面试题7
  9. botoom tab + title bar

随机推荐

  1. Android(安卓)实现长按弹出PopupMenu 菜
  2. Android(安卓)简单音乐播放器开发
  3. Android三种定位方式
  4. android xml中?和 @
  5. Android简单数据存储类SharedPreferences
  6. android 系统启动
  7. android应用:startActivityForResult使用
  8. Android(安卓)Handler机制6--消息的取出
  9. android驱动学习1-驱动开发流程(Android.
  10. Andriod: 在xml布局中使用自定义属性