为啥 getFragmentManager 会导致 Incompatible Type 错误? [关闭]
Posted
技术标签:
【中文标题】为啥 getFragmentManager 会导致 Incompatible Type 错误? [关闭]【英文标题】:Why would getFragmentManager result in an Incompatible Type error? [closed]为什么 getFragmentManager 会导致 Incompatible Type 错误? [关闭] 【发布时间】:2017-04-24 22:17:54 【问题描述】:我正在使用 FragmentManager 制作一个简单的待办事项列表应用程序。当我创建FragmentManager
的实例时,出现错误(如上所示)。
【问题讨论】:
什么标题!!!好久不见 使用 getSupportFragmentManagerimport android.app.FragmentManager
而不是.support.v4.
一个...
在此处发布问题之前,请确保您已在网上搜索过一段时间!
-9 票几乎可以肯定是因为这里最初使用的标题。在互联网上的任何网站上提出技术问题时,请始终使用有用的描述性标题。谢谢。
【参考方案1】:
getFragmentManagaer()
返回android.app.FragmentManager. 的对象使用getSupportFragmentManager()
它返回 android.support.v4.app.FragmentManager
【讨论】:
【参考方案2】:您使用了错误类型的 FragmentManager(一种是 android.support.v4.app.FragmentManager,另一种是 android.app.FragmentManager。)尝试 getSupportFragmentManager()。
【讨论】:
【参考方案3】:android中有两种fragment manager,一种是app.FragmentManager,另一种是v4.app.FragmentManager。在这里您使用的是 v4 支持片段。
所以要获取片段管理器的实例,你必须写
FragmentManager fm = getSupportFragmentManager();
或者如果你想使用
FragmentManager fm = getSupportManager();
然后删除
的导入import android.support.v4.app.FragmentManager
然后导入
import android.app.FragmentManager;
【讨论】:
以上是关于为啥 getFragmentManager 会导致 Incompatible Type 错误? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
getFragmentManager() 无法在自定义对话框上解决
getFragmentManager和getChildFragmentManager