@@ -156,9 +156,7 @@ public boolean onOptionsItemSelected(MenuItem item) {
156156 return true ;
157157 case R .id .action_showhidden :
158158 item .setChecked (!item .isChecked ());
159- TracksFragment fragment = (TracksFragment )
160- mSectionsPagerAdapter .getRegisteredFragment (2 );
161- fragment .setShowHidden (item .isChecked ());
159+ mSectionsPagerAdapter .setShowHidden (item .isChecked ());
162160
163161 return true ;
164162
@@ -187,6 +185,7 @@ protected void onDestroy() {
187185 public class SectionsPagerAdapter extends FragmentPagerAdapter {
188186
189187 private SparseArray <Fragment > mRegisteredFragments = new SparseArray <>();
188+ private boolean mShowHidden = false ;
190189
191190 SectionsPagerAdapter (FragmentManager fm ) {
192191 super (fm );
@@ -200,7 +199,9 @@ public Fragment getItem(int position) {
200199 case 1 :
201200 return AlbumsFragment .newInstance (ModelFragment .GRID_LAYOUT , null );
202201 case 2 :
203- return TracksFragment .newInstance (ModelFragment .VERTICAL_LAYOUT , null );
202+ TracksFragment tracksFragment = TracksFragment .newInstance (ModelFragment .VERTICAL_LAYOUT , null );
203+ tracksFragment .setShowHidden (mShowHidden );
204+ return tracksFragment ;
204205 default :
205206 return ArtistsFragment .newInstance (ModelFragment .GRID_LAYOUT , null );
206207 }
@@ -212,6 +213,7 @@ public int getCount() {
212213 return 3 ;
213214 }
214215
216+ @ NonNull
215217 @ Override
216218 public Object instantiateItem (ViewGroup container , int position ) {
217219
@@ -229,5 +231,13 @@ public void destroyItem(ViewGroup container, int position, Object object) {
229231 public Fragment getRegisteredFragment (int pos ) {
230232 return mRegisteredFragments .get (pos );
231233 }
234+
235+ public void setShowHidden (boolean showHidden ) {
236+ TracksFragment fragment = (TracksFragment ) getRegisteredFragment (2 );
237+ if (fragment != null ) {
238+ fragment .setShowHidden (showHidden );
239+ }
240+ mShowHidden = showHidden ;
241+ }
232242 }
233243}
0 commit comments