getContext(), getApplicationContext(), getBaseContext()和“this”之间的区别是什么?
虽然这是一个简单的问题,但我无法理解它们之间的基本区别。如果可能,请举一些简单的例子。
getContext(), getApplicationContext(), getBaseContext()和“this”之间的区别是什么?
虽然这是一个简单的问题,但我无法理解它们之间的基本区别。如果可能,请举一些简单的例子。
当前回答
从这个文档
我明白你应该用:
尝试使用上下文应用程序而不是上下文活动
其他回答
上下文是:
一个抽象类,它的实现由Android系统提供。 它允许访问特定于应用程序的资源和类,以及 对应用程序级操作的向上调用,例如启动活动, 广播和接收意图等。
getApplicationContext() -返回应用程序中运行的所有活动的上下文。 getBaseContext() -如果你想从应用程序中的另一个上下文访问Context,你可以访问。 getContext() -仅返回当前正在运行的活动的上下文视图。
这个:当前类对象
getContext():返回当前活动的上下文
getApplicationContext():返回应用程序中正在运行的所有活动
从这个文档
我明白你应该用:
尝试使用上下文应用程序而不是上下文活动
getApplicationContext()——返回应用程序中运行的所有活动的上下文。
getBaseContext()—当您想要从您可以访问的应用程序中的另一个上下文访问Context时。
getContext()——它只返回当前正在运行的活动的上下文视图。
This - it's引用当前类对象
它引用当前活动类对象,而活动继承上下文,因此必须在可以使用上下文或活动的地方使用它。