Idea is when user cliks on one of three pictures, in fragment should be shown viewpager, every picture have her own viewpager. Pictures and fragment(viewpagers) should be in one activity. I true every solution I found on internet but nothing helps me. I would be thankful if someone could helps me This is how my code looks like:
public class MainActivity extends FragmentActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main_layout); ImageView mercedes=(ImageView) findViewById(R.id.imageView); ImageView bmw=(ImageView) findViewById(R.id.imageView2); ImageView ford=(ImageView) findViewById(R.id.imageView3); mercedes.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Fragment mf=new MercedesFragment(); FragmentManager fragmentManager=getSupportFragmentManager(); fragmentManager.beginTransaction().replace(R.id.fragmentLayout, mf).commit(); } }); bmw.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Fragment bf=new BMWFragment(); FragmentManager fragmentManager=getSupportFragmentManager(); fragmentManager.beginTransaction().replace(R.id.fragmentLayout, bf).commit(); } }); ford.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Fragment ff=new FordFragment(); FragmentManager fragmentManager=getSupportFragmentManager(); fragmentManager.beginTransaction().replace(R.id.fragmentLayout,ff).commit(); } });} } <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:id="@+id/main"> <ImageView android:layout_width="100dp" android:layout_height="120dp" android:src="@drawable/mercedes_logo" android:id="@+id/imageView" /> <ImageView android:layout_width="100dp" android:layout_height="120dp" android:src="@drawable/bmw_logo_jpeg" android:id="@+id/imageView2" /> <ImageView android:layout_width="100dp" android:layout_height="120dp" android:src="@drawable/ford_logo" android:id="@+id/imageView3" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/fragmentLayout" android:orientation="horizontal"> </LinearLayout> </LinearLayout> public class MercedesFragment extends Fragment { public static final String MERCEDES_ARGS="mer_args"; @Nullable @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view=inflater.inflate(R.layout.mercedes_layout,container,false); ViewPager mvp=(ViewPager) view.findViewById(R.id.mercedes); mvp.setAdapter(adapterMercedes()); return view; } public PagerAdapter adapterMercedes(){ return (new AdapterMercedes(getChildFragmentManager())); } } ... public class AdapterMercedes extends FragmentPagerAdapter { public AdapterMercedes(FragmentManager fm) { super(fm); } @Override public Fragment getItem(int position) { MercedesFragment mercFrag=new MercedesFragment(); Bundle mercArgs=new Bundle(); switch (position){ case 0: mercArgs.putInt(MercedesFragment.MERCEDES_ARGS,R.drawable.merdza1); break; case 1: mercArgs.putInt(MercedesFragment.MERCEDES_ARGS,R.drawable.merdza2); break; case 2: mercArgs.putInt(MercedesFragment.MERCEDES_ARGS, R.drawable.merdza3); break; } mercFrag.setArguments(mercArgs); return mercFrag; } @Override public int getCount() { return 3; } } .. <android.support.v4.view.ViewPager xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/mercedes"> </android.support.v4.view.ViewPager> ... public class BMWFragment extends Fragment { public static final String BMW_ARGS="bmw_args"; @Nullable @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view=inflater.inflate(R.layout.bmw_layout,null); ViewPager bvp=(ViewPager) view.findViewById(R.id.bmw); bvp.setAdapter(adapterBMW()); return view; } public PagerAdapter adapterBMW(){ return (new AdapterBMW(getChildFragmentManager())); } } ... public class AdapterBMW extends FragmentPagerAdapter { public AdapterBMW(FragmentManager fm) { super(fm); } @Override public Fragment getItem(int position) { BMWFragment BMWFrag=new BMWFragment(); Bundle BMWArgs=new Bundle(); switch (position){ case 0: BMWArgs.putInt(BMWFragment.BMW_ARGS,R.drawable.bmw1); break; case 1: BMWArgs.putInt(BMWFragment.BMW_ARGS,R.drawable.bmw2); break; case 2: BMWArgs.putInt(BMWFragment.BMW_ARGS, R.drawable.bmw3); break; } BMWFrag.setArguments(BMWArgs); return BMWFrag; } @Override public int getCount() { return 3; } } ... <android.support.v4.view.ViewPager xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/bmw"> </android.support.v4.view.ViewPager> public class FordFragment extends Fragment { public static final String FORD_ARGS="ford_args"; @Nullable @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view=inflater.inflate(R.layout.ford_layout,null); ViewPager fvp=(ViewPager) view.findViewById(R.id.ford); fvp.setAdapter(adapterFord()); return view; } public PagerAdapter adapterFord(){ return (new AdapterFord(getChildFragmentManager())); } } . public class AdapterFord extends FragmentPagerAdapter { public AdapterFord(FragmentManager fm) { super(fm); } @Override public Fragment getItem(int position) { FordFragment FordFrag=new FordFragment(); Bundle FordArgs=new Bundle(); switch (position){ case 0: FordArgs.putInt(FordFragment.FORD_ARGS,R.drawable.ford1); break; case 1: FordArgs.putInt(FordFragment.FORD_ARGS,R.drawable.ford2); break; case 2: FordArgs.putInt(FordFragment.FORD_ARGS, R.drawable.ford3); break; } FordFrag.setArguments(FordArgs); return FordFrag; } @Override public int getCount() { return 3; } } -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to android-developers+unsubscr...@googlegroups.com. To post to this group, send email to android-developers@googlegroups.com. Visit this group at https://groups.google.com/group/android-developers. To view this discussion on the web visit https://groups.google.com/d/msgid/android-developers/833f8599-b1e7-412f-9688-21afb7d51879%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.