Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/198.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android getContext()和getActivity()之间的区别是什么?_Android_Android Activity_Android Context - Fatal编程技术网

Android getContext()和getActivity()之间的区别是什么?

Android getContext()和getActivity()之间的区别是什么?,android,android-activity,android-context,Android,Android Activity,Android Context,我对所有这些的用法感到非常困惑,我们应该在哪里使用它们。活动是上下文的一个子类,因此每当需要上下文时,都可以给出它们 getActivity()至少是片段上的一个方法,用于获取它所附加到的活动 每当活动的实例方法中需要上下文时,可以使用this 每当需要上下文信息或需要显示内容时,都需要上下文。this-return getContext()-返回 getActivity()-返回 上下文 引用自: 顾名思义,它是应用程序/对象当前状态的上下文。它让新创建的对象了解发生了什么。通常,您调用它来获

我对所有这些的用法感到非常困惑,我们应该在哪里使用它们。

活动是上下文的一个子类,因此每当需要上下文时,都可以给出它们

getActivity()
至少是片段上的一个方法,用于获取它所附加到的活动

每当活动的实例方法中需要上下文时,可以使用
this

每当需要上下文信息或需要显示内容时,都需要上下文。

this-return
getContext()-返回
getActivity()-返回

上下文 引用自:

顾名思义,它是应用程序/对象当前状态的上下文。它让新创建的对象了解发生了什么。通常,您调用它来获取有关程序另一部分(活动、包/应用程序)的信息

活动 活动是支持屏幕或UI的Java代码。换句话说,用户界面的构建块就是活动。 活动类是Android中预定义的类,每个具有UI的应用程序都必须继承它来创建窗口。活动表示Android应用程序的表示层,例如用户看到的屏幕。Android应用程序可以有几个活动,并且可以在应用程序运行时在它们之间切换

注意:活动扩展了上下文。上下文不是活动。 getContext():

它是视图类中的一个方法,只能在从视图类继承的类中访问,并返回当前视图运行的活动上下文

getActivity():


返回片段附加到的活动对象。不推荐使用片段中的getActivity()的原因如下:此方法将返回附加到当前片段的活动。当片段生命周期结束并被销毁时,getActivity()返回null,因此需要处理使用getActivity()时可能出现的null情况。

如果不确定,请使用
getActivity()
。活动是上下文的子类,但上下文不一定是活动,例如服务也是上下文。你想达到什么目的?请引用@Sameer Segal answer关于你的答案,你从这里获得的上下文:@Mick hm。我从俄语来源翻译了这篇文章。我觉得这很有趣。顺便说一句,好的,我把相关链接。