您的位置:首页 > 移动开发 > Android开发

Android中的Context 类的理解和它的应用

2014-05-08 22:13 429 查看
词典中Context的英文解释是上下文;语境;环境;背景;情境。

 在Android程序中,它指应用当前状态的运行环境。它可以让新创建的对象理解当前是什么状态,应用在进行着什么。

通常,我们调用它来获得程序的其他信息(Activity,package/application等)。

我们可以通过调用

getApplicationContext()
getContext()
getBaseContext()
 或者 
this(如果是在activity类中)
来获得Context实例。

context的典型应用:

  • 创建新对象: 创建view,adapters, listeners:

    TextView tv = new TextView(getContext());
    ListAdapter adapter = new SimpleCursorAdapter(getApplicationContext(), ...);
  • 获取利用Android系统的标准服务:如 LAYOUT_INFLATER_SERVICE,  

    context.getSystemService(LAYOUT_INFLATER_SERVICE)
    getApplicationContext().getSharedPreferences(*name*, *mode*);
  • 使用系统中的其他组件:如使用ContentProvider, broadcasts, intent.

    getApplicationContext().getContentResolver().query(uri, ...);
    在编程术语中,Context是指程序运行时所在的大环境,比如说环境变量,全局变量,本地变量,其他类的实例的状态,当前环境的状态等。在其他的API中,也可以看到context,比如说 Servlet的ServletContext, JSF的FacesContext,Spring的ApplicationContext,JNDI的InitialContext.它们通常都利用了Facade设计模式,把运行环境细节抽象出来,最终用户,比如说开发者门不需要知道系统的细节,只需要通过context这一个简化了的接口去调用系统中的服务。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: