mirror of
				https://github.com/TeamNewPipe/NewPipe
				synced 2025-10-31 07:13:00 +00:00 
			
		
		
		
	fixed screen rotation for viewpager
This commit is contained in:
		| @@ -3,6 +3,7 @@ package org.schabi.newpipe.fragments.detail; | ||||
| import android.support.v4.app.Fragment; | ||||
| import android.support.v4.app.FragmentManager; | ||||
| import android.support.v4.app.FragmentPagerAdapter; | ||||
| import android.view.ViewGroup; | ||||
|  | ||||
| import java.util.ArrayList; | ||||
| import java.util.List; | ||||
| @@ -11,10 +12,11 @@ public class TabAdaptor extends FragmentPagerAdapter { | ||||
|  | ||||
|     private final List<Fragment> mFragmentList = new ArrayList<>(); | ||||
|     private final List<String> mFragmentTitleList = new ArrayList<>(); | ||||
|     int baseId = 0; | ||||
|     private final FragmentManager fragmentManager; | ||||
|  | ||||
|     public TabAdaptor(FragmentManager fm) { | ||||
|         super(fm); | ||||
|         this.fragmentManager = fm; | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
| @@ -27,12 +29,6 @@ public class TabAdaptor extends FragmentPagerAdapter { | ||||
|         return mFragmentList.size(); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public long getItemId(int position) { | ||||
|         // give an ID different from position when position has been changed | ||||
|         return baseId + position; | ||||
|     } | ||||
|  | ||||
|     public void addFragment(Fragment fragment, String title) { | ||||
|         mFragmentList.add(fragment); | ||||
|         mFragmentTitleList.add(title); | ||||
| @@ -65,19 +61,13 @@ public class TabAdaptor extends FragmentPagerAdapter { | ||||
|         else return POSITION_NONE; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Notify that the position of a fragment has been changed. | ||||
|      * Create a new ID for each position to force recreation of the fragment | ||||
|      * @param n number of items which have been changed | ||||
|      */ | ||||
|     public void notifyChangeInPosition(int n) { | ||||
|         // shift the ID returned by getItemId outside the range of all previous fragments | ||||
|         // https://stackoverflow.com/questions/10396321/remove-fragment-page-from-viewpager-in-android | ||||
|         baseId += getCount() + n; | ||||
|     } | ||||
|  | ||||
|     public void notifyDataSetUpdate(){ | ||||
|         notifyChangeInPosition(1); | ||||
|         notifyDataSetChanged(); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public void destroyItem(ViewGroup container, int position, Object object) { | ||||
|         fragmentManager.beginTransaction().remove((Fragment) object).commitNowAllowingStateLoss(); | ||||
|     } | ||||
|  | ||||
| } | ||||
|   | ||||
| @@ -37,8 +37,6 @@ public class RelatedVideosFragment extends BaseListInfoFragment<RelatedStreamInf | ||||
|     private View headerRootLayout; | ||||
|     private Switch aSwitch; | ||||
|  | ||||
|  | ||||
|  | ||||
|     private boolean mIsVisibleToUser = false; | ||||
|  | ||||
|     public static RelatedVideosFragment getInstance(StreamInfo info) { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Ritvik Saraf
					Ritvik Saraf