6

Ich habe 3 Fragmente, die von einem FragmentPagerAdapter verwaltet werden, auf einem ViewPager festgelegt.Android: limit Fragmente laden mit einem ViewPager

Ich möchte Fragmente einzeln laden, aber wenn die onCreate-Methode von FragmentActivity ausgeführt wird, werden die ersten beiden Fragmente ausgeführt (onCreateView-Methode).

Ich habe versucht, das Laden von Fragmenten mit der Methode setOffscreenPageLimit zu begrenzen, aber nichts ändert sich.

mPagerAdapter = new MyPagerAdapter(super.getSupportFragmentManager(), fragments); 
pager = (ViewPager) super.findViewById(R.id.tabviewpager); 
pager.setOffscreenPageLimit(0); 
pager.setAdapter(this.mPagerAdapter); 

Vielen Dank für Ihre Hilfe.

Antwort

8

Das Minimum für OffscreenPageLimit wird auf 1 im ViewPagersource code:

private static final int DEFAULT_OFFSCREEN_PAGES = 1; 
.... 
public void setOffscreenPageLimit(int limit) { 
    if (limit < DEFAULT_OFFSCREEN_PAGES) { 
     Log.w(TAG, "Requested offscreen page limit " + limit + " too small; defaulting to " + 
       DEFAULT_OFFSCREEN_PAGES); 
     limit = DEFAULT_OFFSCREEN_PAGES; 
    } 
    if (limit != mOffscreenPageLimit) { 
     mOffscreenPageLimit = limit; 
     populate(); 
    } 
} 
+0

Danke. Gibt es eine andere Möglichkeit, das zu erreichen, ohne SetOffscopePageLimit zu verwenden? – johann

+2

Müssen die Fragmente wirklich einzeln geladen werden? Wenn ja, möchten Sie vielleicht etwas anderes als einen 'ViewPager' mit einem' Adapter' verwenden. Wenn Sie wirklich einen 'ViewPager' wünschen, können Sie einen [OnPageChangeListener] (http://developer.android.com/reference/android/support/v4/view/ViewPager.OnPageChangeListener.html) auf dem ViewPager verwenden und bis zum' 'warten Fragment ist sichtbar, um zu tun, was immer Sie brauchen. Sie müßten nur eine einfache Initialisierung in der 'onCreateView' vornehmen und dann die intensive Arbeit machen, wenn das' Fragment' sichtbar wird. – antew

+0

Vielen Dank für Ihre wertvolle Hilfe! Ich werde es mit OnPageChangeListener versuchen. – johann

Verwandte Themen