为什么静态嵌套片段应该是公共的?

时间:2019-02-19 04:56:52

标签: android android-fragments

我使用Android Studio 3.3.1并有一个Activity,其中包含一个Fragment

public class TestActivity extends FragmentActivity {
    ...

    private static class TestFragment extends android.support.v4.app.Fragment {
        ...
    }
}

Android Studio显示此错误,尽管我可以运行我的应用程序:

  

片段类应该是公共的

但是我想知道,因为TestFragment应该仅在TestActivity中使用。我进行了快速搜索,只发现了一个类似问题的answer。答案是:

  

在方向更改时,将重新创建活动,框架将在片段上创建新实例(并恢复以前的状态)。因此,在这里创建Fragment实例时,框架要求提供公共构造函数。

但是问题仍然存在。为什么框架要求TestActivity拥有对TestFragment的完全访问权限?

0 个答案:

没有答案