一尘不染

什么是 Android 上的“Context”?

javascript

在 Android 编程中,Context类到底是什么,它的用途是什么?


阅读 150

收藏
2022-02-10

共1个答案

一尘不染

它是应用程序/对象当前状态的上下文。它让新创建的对象了解正在发生的事情。通常,您调用它来获取有关程序的另一部分(活动和包/应用程序)的信息。

您可以通过调用getApplicationContext()getContext()getBaseContext()this在从 扩展的类中Context,例如 Application、Activity、Service 和 IntentService 类)来获取上下文。

上下文的典型用法:

  • 创建新对象:创建新视图、适配器、监听器:

java TextView tv = new TextView(getContext()); ListAdapter adapter = new SimpleCursorAdapter(getApplicationContext(), ...);

  • 访问标准公共资源:LAYOUT_INFLATER_SERVICE、SharedPreferences 等服务:

delphi context.getSystemService(LAYOUT_INFLATER_SERVICE) getApplicationContext().getSharedPreferences(*name*, *mode*);

  • 隐式访问组件:关于内容提供者、广播、意图

scss getApplicationContext().getContentResolver().query(uri, ...);

2022-02-10