2 clcurie 11 clcurie_11 于 2013.04.24 11:26 提问

在 pager adapter 里传递数据到 fragments

我用视图中的pager adapter 来加载fragments。在 getItem() 方法中我想使用index传递函数,动态的插入值。所以的值都在 productData 中。但是它总是从 productData.get(0).get("name") 获取值然后放到fragment中。为什么是这样呢?
我检查过,索引值正确的传递到fragments 中, productData 里的数据也是正确的。问题出在哪里呢?

public class ProductViewPagerAdapter extends FragmentPagerAdapter {
    public ProductViewPagerAdapter(FragmentManager fm) {
        super(fm);
    }
    @Override
    public Fragment getItem(int i) {            
        Fragment fragment = new ProductViewFragment();
        Bundle args = new Bundle();
        args.putInt("number", i + 1);
        args.putString("name", productData.get(i).get("name"));
        fragment.setArguments(args);
        return fragment;
    }
    @Override
    public int getCount() {
        return 10;
    }
    @Override
    public CharSequence getPageTitle(int position) {
        switch (position) {
            case 0: return "test1";
            case 1: return "2";
            case 2: return "3";
            case 3: return "4";
        }
        return null;
    }     
 }
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!