How to reuse fragments in a viewpager in Android? -
say have viewpager multiple fragments hold bitmaps. use setoffscreenlimit(numberofpagesinviewpager)
make sure fragments instantly available @ time (this requirement of app). quite, more fragments have, more memory use because of bitmaps inside fragments , fragments being kept in memory.
now, suppose fragments show same content , therefore hold same bitmaps.
would possible create 1 fragment , reuse in viewpager pages (and hence reducing memory footprint 1 fragment)?
in code thinking this:
public class myadapter extends fragmentpageradapter { private myfragment mfragment; public myadapter(fragmentmanager fragmentmanager) { super(fragmentmanager); mfragment = myfragment.newinstance(); } @override public fragment getitem(int position) { // reuse mfragment pages in viewpager return mfragment; } }
this approach not work however, getting type of error:
java.lang.illegalstateexception: can't change tag of fragment myfragment{4259a4d0 id=0x7f0a0074 android:switcher:2131361908:0}: android:switcher:2131361908:0 android:switcher:2131361908:1
would possible create 1 fragment , reuse in viewpager pages (and hence reducing memory footprint 1 fragment)?
not fragmentpageradapter
, fragmentstatepageradapter
. , doubt work own custom pageradapter
.
if use app has viewpager
, notice viewpager
animates when swiping, see parts of 2 pages @ 1 time. difficult 1 page. why viewpager
requires @ least 3 pages @ times, can handle swipes in either direction.
beyond that, cannot quite understand why users want flip through series of identical pages in viewpager
.
Comments
Post a Comment