Note that there are some explanatory texts on larger screens.

plurals
  1. POWhy is ViewPager inside my Fragment not working?
    primarykey
    data
    text
    <p>I am trying to create a fragment that would have a ViewPager. When the said fragment is called and committed, it only displays the first image and it is not swipable. Any thoughts how to achieve this?</p> <p>Here is the Fragment</p> <pre><code>import android.os.AsyncTask; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentStatePagerAdapter; import android.support.v4.app.FragmentTransaction; import android.support.v4.view.ViewPager; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; public class HowToFragment extends Fragment { private ViewPager mViewPager; private MyAdapter mAdapter; private int[] image_id = {R.drawable.image_1, R.drawable.image_2, R.drawable.image_3}; private static int image_pos = 0; public static Fragment newInstance(int pos){ image_pos = pos; return new HowToFragment(); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View v = inflater.inflate(R.layout.fragment_how_to_image, container, false); v.setBackgroundResource(image_id[image_pos]); return v; } @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); mViewPager = new ViewPager(getActivity()); mViewPager.setId(R.id.viewPager_howto); FragmentManager fm = getFragmentManager(); mAdapter = new MyAdapter(fm); new setAdapterTask().execute(); } private class setAdapterTask extends AsyncTask&lt;Void,Void,Void&gt;{ protected Void doInBackground(Void... params) { return null; } @Override protected void onPostExecute(Void result) { mViewPager.setAdapter(mAdapter); } } private class MyAdapter extends FragmentStatePagerAdapter{ public MyAdapter(FragmentManager fm) { super(fm); // TODO Auto-generated constructor stub } @Override public int getCount() { return image_id.length; } @Override public Fragment getItem(int position) { return HowToFragment.newInstance(position); } @Override public void destroyItem(ViewGroup container, int position, Object object) { // TODO Auto-generated method stub FragmentManager manager = getFragmentManager(); FragmentTransaction ft = manager.beginTransaction(); ft.remove((Fragment) object); ft.commit(); super.destroyItem(container, position, object); } } } </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload