0

在此处输入图像描述

好吧,我正在使用 viewpager。我正在用这个创建视图:

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);
                }
            });

我想知道显示的是哪个视图。通常我可以调用ViewPager.getCurrentItem()一个FragmentActivity在一个片段中我怎样才能知道哪个视图是当前项目。

4

2 回答 2

1

在我的情况下,我在 fragmentactivity 中有 viewpager 并在 view pager 中添加子片段,并获得 viewpager 在子片段中的位置,如下所示:

在适配器的 getItem 中:

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

在 OfferSingleFragment 中:

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

在 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;
}

就是这样。希望它会有所帮助..

于 2014-02-26T12:14:38.580 回答
0

请尝试公开静态 viewPager 并在下面的片段中编写代码:

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

也许你可以找到你当前的项目。

于 2014-02-26T09:28:46.200 回答