上下文this和getContext()

thisgetContext()之间有什么区别,当我说this我的意思是在一个Activity

  • 如何查看Android应用程序特定的缓存?
  • 在Android中获取应用程序上下文到静态方法的最佳方法
  • 如何从Android中的对话框开始一个活动
  • 如何从非活动类中检索上下文?
  • 从不扩展Activity的类的startService
  • 如何在Android中创建上下文? ContextThemeWrapper的目的是什么?
  • Android Holo Light的风格根据所选的上下文而变化
  • 为什么直接在Activity中使用ContextWrapper而不是从“this”中隐式的上下文
  • 一般来说有两种types。 扩展ContextWrapper类( ActivityServiceApplication )的那些类以及不扩展它的类(比如View )。

    1. 如果类扩展了ContextWrapper那么你可以使用this作为Context 。 这样的类通常没有getContext()方法。

    2. 那些不扩展ContextWrapper但仍保存并使用Context通常会公开getContext()函数。 在这种情况下,您不能将this用作Context

    而这两种情况是相互排斥的。 至less我不记得扩展ContextWrapper类, ContextWrapper同时拥有getContext

    getContext()没有在Activity中定义。 它用在View (或View子类)中以获取对封闭上下文(一个Activity)的引用。

    没有区别。 当你在一个Activity中,getContext()会返回这个。 这是因为一个Activity是一个上下文!