片段中的 getActivity() 与 this.getActivity()

getActivity() vs this.getActivity() in Fragment

我是Android的新手,我想知道片段类中getActivity()this.getActivity()是否有区别。 例如,我们有一个简单的方法 class(不扩展 Activity 或片段),例如:

 public static void method(Context context){

... some code

    }

如果我们想使用它,只需在我们的片段中调用它class:

MyMethodClass.method(getActivity());

MyMethodClass.method(this.getActivity());

我知道两者都有效,但我需要专业意见。

谢谢。

他们是一样的。 this 关键字引用当前对象。

public class Car {
    int speed = 10;

    public void move() {
        //using this.speed or speed makes no difference here
    }
}

如果你从Fragment扩展,getActivity()this.getActivity()都会调用Fragment#getActivity(),所以正如其他人所说,这没有区别。两者都将在父 class.
中查找方法 一个小的更正:您提供的示例代码:

MyMethodClass.method(getActivity());
如果 method() 是一个静态方法,

会起作用。否则你应该这样称呼它:

    MyMethodClass.this.method(getActivity());

但这只是基本的 Java ;)

在 Fragments

中使用 getActivity() 关键字代替 'this' 关键字