Android 中屏幕进行横屏显示和竖屏显示的方法

简介: Android 中屏幕进行横屏显示和竖屏显示的方法

方法一:在配置清单文件AndroidManifest.xml中

在指定的要设置的Activity对应的标签中加入

android:screenOrientation属性。他有下面几个參数:

  1. “unspecified”:默认值 由系统来推断显示方向.判定的策略是和设备相关的,所以不同的设备会有不同的显示方向。
  2. “landscape”:横屏显示(宽比高要长)
  3. “portrait”:竖屏显示(高比宽要长)
  4. “user”:用户当前首选的方向
  5. “behind”:和该Activity以下的那个Activity的方向一致(在Activity堆栈中的)
  6. “sensor”:有物理的感应器来决定。假设用户旋转设备这屏幕会横竖屏切换。
  7. “nosensor”:忽略物理感应器。这样就不会随着用户旋转设备而更改了("unspecified"设置除外)。

方法二:在java中代码中进行设置

横屏方法:

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);// 横屏

设置横屏之后,一般紧接着会在后面,加上另外一行代码,就是使屏幕全屏显示的代码,这样就不会显示状态栏了,很好的提升用户体验。

//设置窗体全屏,进行全屏显示。否则横屏时,会出现状态栏      
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                WindowManager.LayoutParams.FLAG_FULLSCREEN);

竖屏方法:

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);//竖屏

注意:

在java代码中设置的横竖屏,一般要在加载布局之前就设置好。

也就是在onCreate()方法的setContentView()方法之前。


目录
相关文章
|
5月前
|
存储 Shell Android开发
基于Android P,自定义Android开机动画的方法
本文详细介绍了基于Android P系统自定义开机动画的步骤,包括动画文件结构、脚本编写、ZIP打包方法以及如何将自定义动画集成到AOSP源码中。
99 2
基于Android P,自定义Android开机动画的方法
|
5月前
|
Android开发
基于android-11.0.0_r39,系统应用的手动签名方法和过程
本文介绍了基于Android 11.0.0_r39版本进行系统应用手动签名的方法和解决签名过程中遇到的错误,包括处理`no conscrypt_openjdk_jni-linux-x86_64`和`RegisterNatives failed`的问题。
239 2
|
3月前
|
缓存 Java Shell
Android 系统缓存扫描与清理方法分析
Android 系统缓存从原理探索到实现。
92 15
Android 系统缓存扫描与清理方法分析
|
4月前
|
ARouter 测试技术 API
Android经典面试题之组件化原理、优缺点、实现方法?
本文介绍了组件化在Android开发中的应用,详细阐述了其原理、优缺点及实现方式,包括模块化、接口编程、依赖注入、路由机制等内容,并提供了具体代码示例。
55 2
|
4月前
|
编解码 开发工具 Android开发
Android平台实现屏幕录制(屏幕投影)|音频播放采集|麦克风采集并推送RTMP或轻量级RTSP服务
Android平台屏幕采集、音频播放声音采集、麦克风采集编码打包推送到RTMP和轻量级RTSP服务的相关技术实现,做成高稳定低延迟的同屏系统,还需要有配套好的RTMP、RTSP直播播放器
|
5月前
|
Android开发
Android在rootdir根目录创建自定义目录和挂载点的方法
本文介绍了在Android高通平台的根目录下创建自定义目录和挂载点的方法,通过修改Android.mk文件并使用`LOCAL_POST_INSTALL_CMD`变量在编译过程中添加目录,最终在ramdisk.img的系统根路径下成功创建了`/factory/bin`目录。
251 1
|
5月前
|
开发工具 uml git
AOSP源码下载方法,解决repo sync错误:android-13.0.0_r82
本文分享了下载AOSP源码的方法,包括如何使用repo工具和处理常见的repo sync错误,以及配置Python环境以确保顺利同步特定版本的AOSP代码。
660 0
AOSP源码下载方法,解决repo sync错误:android-13.0.0_r82
|
5月前
|
Android开发
Android项目架构设计问题之onFirstItemVisibleChanged方法的调用如何解决
Android项目架构设计问题之onFirstItemVisibleChanged方法的调用如何解决
44 0
|
5月前
|
Java 测试技术 Android开发
Android项目架构设计问题之使用反射调用类的私有方法如何解决
Android项目架构设计问题之使用反射调用类的私有方法如何解决
55 0
|
6月前
|
Android开发
Android面试题之View的invalidate方法和postInvalidate方法有什么区别
本文探讨了Android自定义View中`invalidate()`和`postInvalidate()`的区别。`invalidate()`在UI线程中刷新View,而`postInvalidate()`用于非UI线程,通过消息机制切换到UI线程执行`invalidate()`。源码分析显示,`postInvalidate()`最终调用`ViewRootImpl`的`dispatchInvalidateDelayed`,通过Handler发送消息到UI线程执行刷新。
67 1