How can I set Orientation Fixed for all activities

后端 未结 5 1991
半阙折子戏
半阙折子戏 2020-12-09 23:20

Android Layout. How can I set Orientation Fixed for all activities in application Tag of AndroidMainfest.xml ? I don\'t want to set orientation for each activity individuall

5条回答
  •  星月不相逢
    2020-12-09 23:58

    I got the best solution. You don't have to pass any activity as parameter and stuff.

    Here's what you have to do.

    Create a class and extend your application like this. Implement onActivityCreated and onActivityStarted and add the code that sets the orientation to whichever you want.

    public class OldApp extends Application {
    
        @Override
        public void onCreate() {
            super.onCreate();
    
            // register to be informed of activities starting up
            registerActivityLifecycleCallbacks(new ActivityLifecycleCallbacks() {
    
                @Override
                public void onActivityStarted(Activity activity) {
                    activity.setRequestedOrientation(
                            ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
                }
    
                @Override
                public void onActivityResumed(Activity activity) {
    
                }
    
                @Override
                public void onActivityPaused(Activity activity) {
    
                }
    
                @Override
                public void onActivityStopped(Activity activity) {
    
                }
    
                @Override
                public void onActivitySaveInstanceState(Activity activity, Bundle bundle) {
    
                }
    
                @Override
                public void onActivityDestroyed(Activity activity) {
    
                }
    
                @Override
                public void onActivityCreated(Activity activity,
                                              Bundle savedInstanceState) {
                  activity.setRequestedOrientation(
                            ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
                  }
            });
        }
    }
    

    After this, add the following in your Manifest file inside the :

    android:name=".OldApp"
    

    End result will be like this:

    
        
    
    

提交回复
热议问题