My app has a single Activity with a FragmentPagerAdapter with four fragments (Using the ViewPagerIndicator library). One of these fragments has designs for both a separate portrait and landscape layout, the other three do not and need to be fixed to portrait orientation.
My thought was to set android:configChanges="orientation"
in the manifest and call getActivity().setRequestedScreenOrientation()
in the onResume()
of all the fragments, locking to SCREEN_ORIENTATION_PORTRAIT
in three of them but to SCREEN_ORIENTATION_UNSPECIFIED
in the one that needs to allow rotation, but this doesn't work. The app remains in portrait mode.
Is there a way to achieve this?
It isn't actually necessary for the actual activity to rotate if there is anyway to allow a fragment to change orientation without its activity doing so, but I have not found anything mentioning this being possible. It would also be equally ok if the activity rotates since the tab bar will be hidden when in landscape orientation.