[英]Fragment replacement errors
我正在尝试更换我的碎片,但由于这些错误,我无法这样做。 但是我已经有了这些导入,因此我不知道这里出了什么问题。
错误1
Error:(73, 96) error: incompatible types
required: android.support.v4.app.FragmentTransaction
found: android.app.FragmentTransaction
错误2
Error:(72, 48) error: incompatible types
required: Fragment
found: FragmentMap
进口货
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
片段替换代码
Fragment newFragment = new FragmentMap();
FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.replace(R.id.detail_container, newFragment);
transaction.addToBackStack(null);
transaction.commit();
最新截图
对于错误1
Error:(73, 96) error: incompatible types
required: android.support.v4.app.FragmentTransaction
found: android.app.FragmentTransaction
将getFragmentManager()
更改为getSupportFragmentManager()
。
当使用支持库(您的情况)时,将使用
getSupportFragmentManager()
)。 不使用支持库时使用getFragmentManager()
。
对于错误2
Error:(72, 48) error: incompatible types
required: Fragment
found: FragmentMap
因此,要替换片段,请使用以下代码:
Fragment newFragment = new FragmentMap();
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
transaction.replace(R.id.detail_container, newFragment);
transaction.addToBackStack(null);
transaction.commit();
newFragment
是要替换的newFragment
,但会引发错误。
确保使用
import android.support.v4.app.Fragment;
通过Fragment类(支持lib而不是普通的Fragment类)扩展FragmentMap
或要替换的任何其他片段,因为newFragment
是来自support lib的Fragment
对象import android.support.v4.app.Fragment;
而不import android.app.Fragment;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.