我创建了自己的片段,我想从我的 Activity 中激活它。我的 mainActivity 文件是一个纯粹的 Activity(不是 FragmantActivity 或其他任何东西)。为什么我不能使用自定义 Fragment 作为参数?
if (savedInstanceState == null) {
// Add the fragment on initial activity setup
myFragment = new CustomFragment();
getFragmentManager()
.beginTransaction()
.add(android.R.id.content, myFragment )
.commit();
我收到一个编译错误,告诉我 .add() 方法的第二个参数必须是 Fragment,但“myFragment”是派生 Fragment 类的 CustomFragment。那么如何从普通的 Activity 中激活这个片段呢?
最佳答案
确保您的 Fragment 导入保持一致。在所有类中使用 import android.app.Fragment 或 import android.support.v4.app.Fragment;在所有类(class)中。不要混合搭配
FragmentActivity 或 FragmentActivity 的任何子类只能保存支持库中的片段。因此,将您的 Activity 的父类更改为 FragmentActivity,它将起作用。由于 AppCompatActivity 继承自 FragmentActivity,因此它也可以工作。
关于java - 从 Activity 中调用自定义片段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40598897/