简体   繁体   English

如何将LinkedHashMap从FragmentPagerAdapter传递给Fragment?

[英]How to pass LinkedHashMap from FragmentPagerAdapter to Fragment?

Below is example of passing an Int value using args.putInt. 以下是使用args.putInt.传递Int值的args.putInt. Similarly I want to pass employee_map . 同样,我想传递employee_map How to pass Map object as Bundle args to Fragments. 如何将Map对象作为Bundle args传递给Fragments。 I don't want to pass in as list. 我不想作为列表传递。

MyFragmentPageAdapter extends FragmentPagerAdapter MyFragmentPageAdapter扩展FragmentPagerAdapter

@Override
   public Fragment getItem(int position) {
      LinkedHashMap<String,Employee> employee_map;
      Fragment fragment = new DummySectionFragment();
      Bundle args = new Bundle();
      args.putInt(DummySectionFragment.ARG_SECTION_NUMBER, position);
      fragment.setArguments(args);
      return fragment;
    }

MyFragment extends Fragment MyFragment扩展Fragment

@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
       int fragmentNumber = getArguments().getInt(ARG_SECTION_NUMBER);
}

MyFragmentPageAdapter MyFragmentPageAdapter

 @Override
       public Fragment getItem(int position) {
          LinkedHashMap<String,Employee> employee_map;
          Fragment fragment = new DummySectionFragment();
          Bundle args = new Bundle();
          args.putInt(DummySectionFragment.ARG_SECTION_NUMBER, position);
          args.putSerializable("employee_map", employee_map);
          fragment.setArguments(args);
          return fragment;
        }

MyFragment.java MyFragment.java

@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
       int fragmentNumber = getArguments().getInt(ARG_SECTION_NUMBER);
       employee_map = (LinkedHashMap<String, Employee>) getArguments().getSerializable("employee_map");
}

Important: Employee implements java.io.Serializable 重要提示: Employee实现java.io.Serializable

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM