将screenOrientation设置为portrait不起作用

Rob*_*eus 7 android screen-orientation

我想以纵向模式运行我的应用程序,我知道这不是最佳做法,但有理由这样做.虽然我已经禁用了旋转,但它仍然可以在某些视图上旋转,而在其他视图上则不会.

我的Android Manifest中有这部分代码:

 <activity
        android:name="<name>.app.MainActivity"
        android:label="@string/app_name"
        android:configChanges="keyboardHidden|keyboard|locale|orientation"
        android:screenOrientation="portrait">
Run Code Online (Sandbox Code Playgroud)

我正在使用片段根据用户输入显示不同的容器.

这是唯一具有碎片的活动.我在这个网站上尝试了一些解决方案.包括按代码设置纵向模式

Par*_*era 8

你可以做到类似下面的事情

在java中的rootView之后添加这一行

 getActivity().setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);  // programmatically
Run Code Online (Sandbox Code Playgroud)

对于Ex:

View rootView = inflater.inflate(R.layout.activityxml, container, false);       
getActivity().setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

And also in your manifest change it 

android:configChanges="orientation|keyboardHidden" as android:configChanges="keyboardHidden"

<activity
    android:name="com.test.activity"
    android:label="@string/app_name" 
    android:screenOrientation="portrait"
    android:configChanges="keyboardHidden" >
Run Code Online (Sandbox Code Playgroud)