ViewPager + FragmentStatePagerAdapter + Ausrichtung ändern

Ich habe ein kleines Problem: ich habe einen ViewPager mit einigen Seiten und ich benutze die FragmentStatePagerAdapter, um die Daten zu verarbeiten. Im hoch-ich habe zum Beispiel 20 Seiten für den ViewPager und in der Landschaft ich habe gerade 10 Seiten für den ViewPager. Also auf eine Orientierung ändern, erstelle ich einen neuen Adapter mit unterschiedlichen Daten.

Hier eine kleine Erklärung, warum: ich zeige ein Bild im hochformat und zwei im Querformat, aber immer alles in Anzahl. Wenn ich 10 Bilder zu zeigen, habe ich 10 im hochformat, und 5 in der Landschaft (immer zwei).

Nun habe ich aber einen merkwürdigen Fehler:
Wenn ich im Querformat auf index 5 und schalten Sie das Gerät, den ViewPager die aktuelle Seite ist auf 10 gesetzt. Wenn ich schalten Sie es wieder ich bin auf Seite 5. Wenn ich wischen die ViewPage-jetzt bis Seite 10 die methode getItem der adapter ist nie genannt und die ViewPage-zeigt mir ein portrait-Bild und nicht die zwei für die Landschaft.
Wie kann das passieren? Gibt es einen cache, in den adapter oder ViewPager? In der onCreate der Activity-alles ist neu erstellt, die adapter und auch die Daten (nur strings mit Pfad) für den ViewPager.
So eine Idee wie man dieses Problem beheben wirklich beängstigend "feature"?

Hier sind einige code:

onCreate:

    mViewPagerAdapter = new ReaderPageViewAdapter(getSupportFragmentManager(), getBaseContext(), mCurrentDocument.mPages, getResources()
                .getConfiguration().orientation);
    mPageReader = (ReaderViewPager) findViewById(R.id.pager);
    mPageReader.setAdapter(mViewPagerAdapter);

adapter getItem:

    public Fragment getItem(final int index) {
        final PageInfo pageInfo = mPages.get(index);
        final PageFragment pageFragment = (PageFragment) PageFragment
                .instantiate(mContext, pageInfo.mClss.getName(), pageInfo.mArgs);
        return pageFragment;
    }

Wenn Sie etwas brauchen, mehr mir nur sagen. Dank

Für mich ist dieses stackoverflow.com/questions/17629463/... Ansatz perfekt!

InformationsquelleAutor Informatic0re | 2012-12-17

Schreibe einen Kommentar