برطرف کردن مشکل عدم نمایش محتوای Tab ها، بعد از چندین بار انتخاب Tab های مختلف، با استفاده از روش setOffscreenPageLimit ، در برنامه نویسی اندروید
همان طور که می دانید، با استفاده از Fragment ها ، می توانیم یک برنامه اندروید به صورت Tab بندی شده داشته باشیم :
اما یکی از مشکلاتی که هنگام کار با Tab ها با آن مواجه هستیم این است که بعد از چند بار انتخاب Tab های مختلف، ممکن است که دیگر محتوای یک یا چند Tab نمایش داده نشود و عملا آن را به صورت خالی ببینیم. برای رفع این مشکل، می توانیم از روش setOffscreenPageLimit استفاده کنیم.
فرض کنید که در Activity مربوط به Fragment ها، یک ViewPager با نام vp تعریف کرده ایم، حال برای رفع مشکل مورد نظر، باید کد زیر را بنویسیم :
که در آن فرض کرده ایم که تعداد Tab ها برابر 3 است، اگر تعداد Tab های برنامه اندروید شما فرق دارد، باید به جای عدد 3 ، همان تعداد را بنویسید.
بد نیست تذکر بدهیم که معمولا برای ساخت برنامه های اندروید به صورت Tab بندی، از ActionBarSherlock استفاده می شود، زیرا این action bar این امکان را فراهم می کند که در نسخه های API پایین تر از 11 نیز اجرا شود (برخی Tab بندی ها، در نسخه های API پایین تر از 11 عمل نمی کنند).
این مبحث، با الهام از منابع زیر نوشته شده است :
http://stackoverflow.com/questions/20628409/android-sherlock-content-gone-after-3-swipe
http://stackoverflow.com/questions/12538861/what-is-the-practical-effect-of-viewpager-setoffscreenpagelimit3/12538927#12538927