Domanda

enter image description here

Well I'm using viewpager. I am creating views with this:

public class CrimePagerActivity extends FragmentActivity {

@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

    FragmentManager fm = getSupportFragmentManager();
            mViewPager.setAdapter(new FragmentStatePagerAdapter(fm) {

                @Override
                public int getCount() {
                    return mSorus.size();
                }

                @Override
                public Fragment getItem(int sorusirasi) {

                    return fragment.newInstance(sorusirasi);
                }
            });

I want to know which view is shown. Normally I can call ViewPager.getCurrentItem() in a FragmentActivity but in a Fragment how can I learn which view is currentitem.

È stato utile?

Soluzione

In my case ,I have viewpager in fragmentactivity and add child fragment in view pager,and get the position of viewpager in child fragment like this:

In adapter's getItem:

   @Override
        public Fragment getItem(int position) {
            Log.d("Click>>",">>"+position+" >>> "+position);
           return OfferSingleFragment.newInstance(position);
        }  

And In OfferSingleFragment:

public static OfferSingleFragment newInstance(String string) {
    OfferSingleFragment f =  new OfferSingleFragment();
       Bundle args = new Bundle();
        args.putString("pos",string);
        f.setArguments(args);
    return f;
}

And In OnCreateView:

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    View v = inflater.inflate(R.layout.single_layout,container,false);
    View txt = v.findViewById(R.id.txt_title_singlelayout);

      String t = getArguments().getString("pos") ;
         Log.d("OnCreateView",">>"+t);
         ((TextView)txt).setText("Position"+">>"+t);
    return v;
}

That's all.Hope it will help..

Altri suggerimenti

please try to make public static viewPager and write code in your fragment below:

ViewPager pager = mViewPager.getViewPager();
pager.getCurrentItem();

may be you can find your current item.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top