Android fragments 使用getActivity()的Android

Android fragments 使用getActivity()的Android,android-fragments,Android Fragments,我有一个关于Android“最佳实践”的一般性问题 让我们以一个片段为例,其中我需要多次访问活动 我可以做到以下几点: 1-继续调用getActivity() 2-重写片段的onAttach()方法,将acitivity保存为变量一次,并在整个片段中使用它,如下所示: private Activity activity; @Override public void onAttach(Context context) { super.onAttach(context); this

我有一个关于Android“最佳实践”的一般性问题

让我们以一个片段为例,其中我需要多次访问活动

我可以做到以下几点:

1-继续调用getActivity()

2-重写片段的onAttach()方法,将acitivity保存为变量一次,并在整个片段中使用它,如下所示:

private Activity activity;

@Override
public void onAttach(Context context) {
    super.onAttach(context);
    this.activity = (Activity) context;
}

这两种方法有什么区别吗?哪一种被认为对性能/内存等更有利?

在观看随机的Android演讲时,我得到了杰克·沃顿对我的问题的惊人回答

答案是不要多次调用getActivity()。只需将活动另存为字段以供重用

讲座链接: