我使用Streets Of Boston’s answer here保存了片段对象
并拉出一个片段
Fragment fragment = myPagerAdapter.getRegisteredFragments(NowPosition);
if (fragment == null)
{
return;
}
但我无法从片段对象访问公共方法
片段.
public void dowork()
{
//WORK!
}
public static void dowork2()
{
//WORK!
}
fragment.dowork(); – >没找到dowork
fragment.dowork2(); – >找不到dowork2
怎么访问?
谢谢.
解决方法:
如果您尝试在示例中实例化的片段上调用这些方法,则需要将片段强制转换为类.因此,如果您的片段属于MyFragment类,则需要执行此操作
MyFragment fragment = (MyFragment) myPagerAdapter.getRegisteredFragments(NowPosition);
此外,应该在类上调用静态方法,而不是实例,因此这样做是正确的
MyFragment.dowork2();
如果该方法实际上是静态的.