我有一个片段寄存器。这个里面有一个视图寻呼机。我需要每个页面将数据放入寄存器hashmap变量。这是我尝试过的..
这是我想从每个页面访问的一种方法
public void addData(String key, String data){
Toast.makeText(this.getActivity(), data, Toast.LENGTH_LONG).show();
}
我试过像:
FragmentManager fm = getFragmentManager();
fragment = (ArtistRegister)fm.findFragmentById(R.id.asd);
fragment.addData("asd", asd);
但它总是返回null指针..
最佳答案
第一个解决方案:
ArtistRegister artistRegister = ((ArtistRegister) getParentFragment());
artistRegister.addData("asd", "asd");
第二种解决方案:
创建
interface
并将其作为PagerAdapter
构造函数的参数传递。编辑:
OP使用
getFragmentManager()
而不是getChildFragmentManager()
来初始化适配器,因此他一直在获取NullPointerExpception