我正在使用Actionbarsherlock并在我的 Fragment 活动中有一个ListFragment和一个DialogFragment 。
public class RemainingTasks extends SherlockFragmentActivity{
public static class CurrentListFragment extends SherlockListFragment{
//##need to call addDialog() from within one of the methods here
}
public void addDialog() {
//Create and show the dialog.
DialogFragment newFragment = MyDialogFragment.newInstance();
newFragment.show(ft, "dialog");
}
public static class MyDialogFragment extends SherlockDialogFragment{
}
}
现在,我需要从静态CurrentListFragmentaddDialog()
中调用该方法(这将显示一个新对话框),但无法调用。
我尝试了什么:
当我做 a
getActivity()
时,我最终得到的是 SherlockActivity,而不是 FragmentActivity。无法调用
getSupportFragmentManager()
(错误:对非静态方法的静态引用)
有没有办法做到这一点?另外,我的方法是正确的,还是有更好的方法?