什么是Context? 怎么理解安卓上下文?(1)

什么是Context? 怎么理解安卓上下文?

翻译http://stackoverflow.com/questions/3572463/what-is-context-on-android

在安卓变成中,到底Context(上下文)类是什么,有什么用?

简单地说,是当前程序/对象的现在的状态。Context让新建的对象知道到底是怎么一回事。你可以通过context获取关于你程序的另外一部分(activity和application)的信息。

你可以通过调用以下的方法来获得context。

getApplicationContext()
getContext()
getBaseContext()
this (在activity类)

一些典型的用法:

  • 创建一个新对象:创建view,adapter,listener:
TextView tv = new TextView(getContext());
ListAdapter adapter = new SimpleCursorAdapter(getApplicationContext(), ...);
  • 访问一些公共资源,比如说: LAYOUT_INFLATER_SERVICE, SharedPreferences:
context.getSystemService(LAYOUT_INFLATER_SERVICE)
getApplicationContext().getSharedPreferences(*name*, *mode*);
  • 隐式的访问一些组件:内容提供者,广播,意图
getApplicationContext().getContentResolver().query(uri, ...);

你可能感兴趣的:(Android,StackOverflow)