I've created my layout with viewPager and TabLayout:
public class HomeFragment extends Fragment
{
public static TabLayout tabLayout;
public static ViewPager viewPager;
public static int int_items = 3 ;
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View inflatedView = inflater.inflate(R.layout.fragment_home, container,false);
viewPager = (ViewPager) inflatedView.findViewById(R.id.viewpager);
int [] drawables = {R.drawable.home,R.drawable.street,R.drawable.map};
Bundle bundle = new Bundle();
final SearchFragment searchFragment = new SearchFragment();
final CardFragment cardFragment = new CardFragment();
final MapFragment mapFragment = new MapFragment();
viewPager.setAdapter(new FragmentPagerAdapter(getChildFragmentManager())
{
public Fragment getItem(int position)
{
if(position == 0)
return searchFragment;
else if(position ==1)
return cardFragment;
else
return mapFragment;
}
@Override
public int getCount()
{
return int_items;
}
});
tabLayout = (TabLayout) inflatedView.findViewById(R.id.tabs);
tabLayout.setupWithViewPager(viewPager);
for (int i = 0; i < tabLayout.getTabCount(); i++)
{
tabLayout.getTabAt(i).setIcon(drawables[i]);
}
return inflatedView;
}
@Override
public void onAttach(Context context) {
super.onAttach(context);
}
@Override
public void onDetach() {
super.onDetach();
}
}
now I need to do this code in Asynctask (I post only doInBackground() method):
List <ParseObject> result;
ParseQuery<ParseObject> query;
protected Void doInBackground(final Void... params)
{
try
{
query = ParseQuery.getQuery("Trains");
result = query.find();
}
catch (com.parse.ParseException e)
{
e.printStackTrace();
}
}
so now I want to pass List <ParseObject> result;
at SearchFragment
, CardFragment
and MapFragment
.
It's possible to use a Bundle? Or have I to use other method?