FragmentStatePagerAdapter getitem проблема

Я сделал фотогалерею. Картинки хранятся в каталоге. Но если у меня есть 3 изображения в каталоге, отображаются только 2. getcount возвращает 3. У меня было 3 элемента в списке файлов. имена файлов верны. Но мне кажется, что getitem вызывается 2 раза с позицией 0 и 1.

в строке args.putInt(DemoObjectFragment.ARG_OBJECT, i+1); я пытаюсь использовать i, i+1, i-1. (с i-1 он разбился:)) но с остальными у меня только 2 картинки

 public static class DemoCollectionPagerAdapter extends FragmentStatePagerAdapter{
    String path = Environment.getExternalStorageDirectory() + "PATH";
    public DemoCollectionPagerAdapter(FragmentManager fm) {
        super(fm);
    }

    @Override
    public Fragment getItem(int i) {
        Fragment fragment = new DemoObjectFragment();
        Bundle args = new Bundle();
        args.putInt(DemoObjectFragment.ARG_OBJECT, i+1);
        fragment.setArguments(args);
        return fragment;
    }

    @Override
    public int getCount() {
        File f = new File(path);
        final File filePict[] = f.listFiles();
        int nb = filePict.length-1;
        return nb;
    }}
public static class DemoObjectFragment extends Fragment {

    public static final String ARG_OBJECT = "object";

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        View rootView = inflater.inflate(R.layout.fragment_collection_object, container, false);

        Bundle args = getArguments();
        String path = Environment.getExternalStorageDirectory() + "PATH";
        File f = new File(path);
        final File filePict[] = f.listFiles();
        if(filePict.length>0) {

                    ((ImageView) rootView.findViewById(R.id.pictgal)).setImageBitmap(BitmapFactory.decodeFile(filePict[args.getInt(ARG_OBJECT)].toString()));
            rootView.findViewById(R.id.butpict).setTag(filePict[args.getInt(ARG_OBJECT)].toString());
        }
        return rootView;
    }
}

0 ответов

Другие вопросы по тегам