<分区>
我明白为什么 Android 要求您在尝试获取 View (例如显示 Toast 等)时传递 Context 对象。
但是,我真的不明白要求它访问可以由应用程序中的不同上下文共享的资源的意义。
我有好几次发现自己试图使用静态方法或类似的东西从实用程序类访问资源,并且发现要求传递上下文参数非常烦人。
我看不出有什么地方可以用这个来解决问题。
标签 android
<分区>
我明白为什么 Android 要求您在尝试获取 View (例如显示 Toast 等)时传递 Context 对象。
但是,我真的不明白要求它访问可以由应用程序中的不同上下文共享的资源的意义。
我有好几次发现自己试图使用静态方法或类似的东西从实用程序类访问资源,并且发现要求传递上下文参数非常烦人。
我看不出有什么地方可以用这个来解决问题。
最佳答案
Interface to global information about an application environment. This is an abstract class whose implementation is provided by the Android system. It allows access to application-specific resources and classes, as well as up-calls for application-level operations such as launching activities, broadcasting and receiving intents, etc.
很明显,上下文是电话资源和您的代码之间的中间人。这似乎合乎逻辑,您无法从任何地方访问它。
您只能在 Activity 和 Application 类中访问 Context 的原因是因为它们都派生自 Context :
java.lang.Object
↳ android.content.Context ↳ android.content.ContextWrapper ↳ android.view.ContextThemeWrapper ↳ android.app.Activity
关于android - 为什么 Android 需要上下文来访问资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27170817/