我想在我的代码中使用自定义日期和时间选择器,因为我创建了一个单独的包并将所有日期和时间选择器类放在那里。 如果我从主要活动运行代码,代码运行顺利,但是当我想从片段调用时,它不能识别 getSupportFragmentManager()方法 我从我的片段中拨打的电话是:
##1
For ($i =$j=0; $i -le $SourceFolderList.Count -and $j -le $DestinationFolderList.Count; $i++ -and $j++)
{
$file1Name = $SourceFolderList[$i].Name
$file1Path = $SourceFolderList[$i].FullName
$file2Name = $DestinationFolderList[$j].Name
$file2Path = $DestinationFolderList[$j].FullName
}
##2
foreach( $file in $SourceFolderList)
{
if($DestinationFolderList.Name -contains $file.Name )
{
Write-Host $file.Name -ForegroundColor Cyan
Write-Host $DestinationFolderList.($file.Name).FullName -ForegroundColor Yellow
}
}
请帮助,谢谢你们。
答案 0 :(得分:0)
你不。
您需要从片段中调用getChildFragmentManager()
。试图致电getActivity().getSupportFragmentManager()
会引发错误。
答案 1 :(得分:0)
看起来SimpleDateTimePicker
类是您自己的类,它只接受android.app.FragmentManager
,而不接受android.support.v4.app.FragmentManager
。因此,您只能将该类用于API11或更高版本。如果您要使用android.support.v4.app.FragmentManager
,则需要修改SimpleDateTimePicker
以接受构造函数中的android.support.v4.app.FragmentManager
修改强>
好的,有两个不同的类:android.app.FragmentManager
和android.support.v4.app.FragmentManager
。第二个是第一个的兼容性实现。大多数应用程序使用第二个,因为它允许在API 11之前使用。并且链接中的类使用第一个。有两种方法可以解决它:
第1天 - 您开始使用android.app.FragmentManager
而不是android.support.v4.app.FragmentManager
。这将导致app仅在api 11之上工作。
第二种方法是将SimpleDateTimePicker
的代码更改为使用android.support.v4.app.FragmentManager
。我认为这是更正确的方式。
答案 2 :(得分:0)
首先检查frgaments
android.support.v4.app.Fragment
或android.app.Fragment
的{{1}}延伸。如果是android.app.Fragment
,请致电getActivity().getFragmentManager();
或者是否来自支持frgament
然后调用getActivity().getSupportFragmentManager();
答案 3 :(得分:0)
这对我有用
getBaseActivity().getFragmentManager()
试试吧。
答案 4 :(得分:0)
这对我有用:
getChildFragmentManager()