我如何设置它,使应用程序只在纵向模式下运行?我希望在应用程序运行时禁用横向模式。如何通过编程实现呢?
当前回答
在你的Manifest中输入:
<activity
android:screenOrientation="portrait"
<!--- Rest of your application information ---!>
</activity>
其他回答
你可以在你的manifest文件中设置这个。
android:name=".your launching activity name"
android:screenOrientation="portrait"
你也可以通过在你的类文件中写这样的代码来达到同样的目的:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
有两种方法。
添加android:screenOrientation="portrait"在你的manifest文件 相应的活动 添加 setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); 在onCreate()方法中添加到您的活动
对于Xamarin用户:
如果你把你所有的活动扩展到一个BaseActivity,只需添加:
this.RequestedOrientation = ScreenOrientation.Portrait;
这样问题就解决了。如果你想要任何特定的活动在横向覆盖OnActivityCreated。为:
this.Activity.RequestedOrientation = ScreenOrientation.Landscape;
是的,您既可以通过编程方式做到这一点,也可以为您的所有活动创建一个所有活动都可以扩展的AbstractActivity。
public abstract class AbstractActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
}
这个抽象活动也可以用于全局菜单。
将android:screenOrientation="portrait"添加到AndroidManifest.xml中的活动中。例如:
<activity android:name=".SomeActivity"
android:label="@string/app_name"
android:screenOrientation="portrait">
推荐文章
- 警告:API ' variable . getjavacompile()'已过时,已被' variable . getjavacompileprovider()'取代
- 安装APK时出现错误
- 碎片中的onCreateOptionsMenu
- TextView粗体通过XML文件?
- 如何使线性布局的孩子之间的空间?
- DSL元素android.dataBinding。enabled'已过时,已被'android.buildFeatures.dataBinding'取代
- ConstraintLayout:以编程方式更改约束
- PANIC: AVD系统路径损坏。检查ANDROID_SDK_ROOT值
- 如何生成字符串类型的buildConfigField
- Recyclerview不调用onCreateViewHolder
- Android API 21工具栏填充
- Android L中不支持操作栏导航模式
- 如何在TextView中添加一个子弹符号?
- PreferenceManager getDefaultSharedPreferences在Android Q中已弃用
- 在Android Studio中创建aar文件