Android横竖屏的设置和使用

Android横竖屏解析 相信大家都或多或少的为横竖屏烦恼过吧,毕竟我们在开发中用到这方面的知识还是挺多的,比如我上一篇讲VideoView的博客,在播放视频的时候,能够自如的切换横竖屏是很有必要的。所以这篇博客就来解析Android中的横竖屏。1、screenOrientation当手机没有关闭横竖屏切换功能时,系统一旦触发横竖屏切换,缺省状态(即系统默认状态)下,当前活动的App的界面就会进行横竖屏切换,由于横竖屏的界面 阅读详情
  第一种,同时支持横屏和竖屏。

1)这种方式如果屏幕的布局在横屏和竖屏没有明显的差异,是不需要设置的,系统会默认旋转。

2)横屏和竖屏的布局明显的差异,比如横屏的时候可能会分成左右两屏,那么就需要我们进行相关的设置,这种情况下,一种布局文件是无法满足2种方向上的需要。

步骤如下:

  • 首先需要在androidmanifest.xml中加入配置android:configChanges="orientation|keyboardHidden|navigation“,这样在程序中. Activity就不会重复的调用onCreate(),甚至不会调用onPause、onResume,只会调用一个onConfigurationChanged(Configuration newConfig)的方法。
  • onConfigurationChanged的实现代码如下:
    • public void onConfigurationChanged(Configuration newConfig) {
      super.onConfigurationChanged(newConfig);
      if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {
      // TODO
      } else if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) {
      // TODO
      }
      }
  • android:configChanges的介绍;
    • 通过设置这个属性可以使当前的Activity捕捉设备状态各种变化,下面是经常使用和可以识别的内容属性值:
      CONFIG_FONT_SCALE 全局字体大小缩放发生改变
      CONFIG_MCC --移动国家号码,由三位数字组成,每个国家都有自己独立的MCC,可以识别手机用户所属国家。
      CONFIG_MNC --移动网号,在一个国家或者地区中,用于区分手机用户的服务商。
      CONFIG_LOCALE --用户所在地区发生变化。
      CONFIG_TOUCHSCREEN --触摸屏发生了变化,这个基本不会发生。
      CONFIG_KEYBOARD --键盘模式发生变化
      CONFIG_NAVIGATION--导航模式发生变化
      CONFIG_ORIENTATION 设备旋转,横向显示和竖向显示模式切换
    • 使用的时候,各字段用“|”符号分隔开。android:configChanges="keyboardHidden|orientation"

第二种,是只支持一种模式,如只只是横屏,或者只支持竖屏模式。

这种模式的使用相当容易些,直接在AndroidManifest.xml里面配置一下就可以了。加入这一行android:screenOrientation=”landscape”。(landscape是横向,portrait是纵向)

需要注意的:每个activity都有这个属性screenOrientation,每个activity都需要设置,并且这个属性只能设给activity,不能设给application

 

 

原文地址:http://blog.163.com/fang_wang2005/blog/static/176928073201122924229728/

Android开发笔记: android横竖屏和screenOrientation属性详解 landscape:限制界面为横屏,旋转屏幕也不会改变当前状态。portrait:限制界面为竖屏,旋转屏幕也不会改变当前状态。sensor:根据传感器定位方向,旋转手机90度,180,270,360,界面都会发生变化。sensorLandscape:(横屏的旋转,不会出现竖屏的现象)根据传感器定位方向,旋转手机180度界面旋转。一般横屏游戏会是这个属性。sensorPortrait:(竖屏的旋转,... 阅读详情

相关推荐

Visual MODFLOW Flex 6.1新手入门:从数据导入到3D建模的完整工作流解析

本文为Visual MODFLOW Flex 6.1新手提供了从零开始构建地下水数值模型的完整工作流指南。详细解析了从项目规划、数据准备与导入,到构建三维概念模型、生成并运行数值模型,直至结果可视化与校准的核心步骤。帮助水文地质与环工领域初学者快速掌握这一专业软件,高效完成从数据到三维建模的全过程。

a1b2c的博客 799

【Android】横竖屏技术调研分析报告

产品要求项目中可以根据屏幕横屏来实现自动切换UI的展示,保证整体的UI效果。

weixin_44002043的博客 487

Spacedesk保姆级教程:用旧平板给Windows电脑当副屏,从安装到避坑一步到位

本文提供Spacedesk保姆级教程,教你如何将旧平板变成Windows电脑的副屏,从软件安装到网络配置、显示优化及声音交互,一步步避开常见陷阱。通过WiFi实现扩展屏功能,支持4K分辨率和60Hz刷新率,让闲置设备焕发新生。

weixin_42524945的博客 1万+

Android中横竖屏相关事宜

最近在做公司项目时,发现横竖屏切换和我原来的认知不太一样,原来我是知道同一个Activity横竖屏切换时,会导致生命周期重启。那么今天就趁此机会将android中横竖屏相关的知识总结一下。 首先,我们看同一个activity横竖屏,会执行那么生命周期中的方法: 代码如下: package com.example.demo; import android.app.Activity

hunan_lijie_的专栏 532

Redmi K30 5G刷 LineageOS17.1

前言 买手机前就观望了Xdr论坛,看Redmi K30 5G有LineageOS17.1的Rom并且还挺热,应该还不错,就入手了。晚上就刷机了。买了小米就是为了折腾,为发烧而生。 在开始前还请先安装adb工具,因为我自己是做Android开发的,自带adb,不会安装的可以百度“Android安装adb工具”。还有下载刷机文件:百度云 密码:2a0f 刷机的系统是刚买来的低版本,没有升级过Rom,如果高版本慎刷。 还有这个Rom是5G版本的,4G版本的不要刷。 建议没有刷过机器的最好不要尝试,变砖后果自负。

u010436867的博客 1万+

半导体物理-Si晶体生长方向<2>

Si(硅)晶体的生长方向是一个重要的概念,尤其在半导体工业中。这个概念涉及到晶体在生长过程中原子排列的方向,对晶体的性质和应用有重大影响。让我为您详细解释:理解Si晶体的生长方向对于半导体材料的研究和应用非常重要,它直接影响了最终器件的性能和制造工艺。在实际应用中,选择适当的生长方向可以优化器件性能,提高产品质量。

m0_37606066的博客 2989

Android 折叠屏适配最全的攻略在这里

随着三星 Galaxy Fold 和 华为 Mate X 的发布,折叠屏手机开始进入大家的视线。在改变手机体验的同时,也给我们开发人员在适配方面带来了更多的挑战。本文给大家介绍一下 Android 开发中和折叠屏相关的一些概念,以及如何进行折叠屏的适配。 折叠屏适配 折叠屏之所以需要适配,是因为我们的应用有可能在运行的过程中,所在的屏幕尺寸发生了变化,这种情况对现有项目多少都会产生一些问题。 所以折叠屏适配的本质是:当应用运行时,屏幕的尺寸、密度或比例发生了变化,应用能够继续在变化后的屏幕上正常显..

冯旭的博客 1万+

W5500以太网模块官方驱动移植

W5500驱动移植

weixin_42621095的博客 4123

Android: 横竖屏对应不同的布局

【代码】Android: 横竖屏对应不同的布局。

ED_LAI的博客 388

华为交换机链路聚合对接思科交换机链路聚合故障

2台华为交换机采用堆叠方式与思科交换机之间使用链路聚合,华为交换机与cisco交换机链路捆绑接口频繁UP/DOWN,业务中断。

网络工程师日常的博客 2116

把 MANDT 锁进保险箱:ABAP Client Handling 与 Client Isolation(聚焦 AMDP 的 Client Safety )

本文探讨了ABAP系统中Client Handling与Client Isolation机制的演进,重点分析了AMDP环境下多租户隔离的风险与解决方案。传统ABAP SQL/CDS通过隐式Client过滤提供安全保障,而AMDP因其原生SQLScript特性容易绕过隔离机制。文章对比了旧时代依赖开发自觉的传参方式与新时代通过AMDP OPTIONS强约束的语法方案,详细介绍了CLIENT INDEPENDENT和CDS SESSION CLIENT DEPENDENT两种编译期安全机制,阐述了USING列表

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 338

.Android横竖屏的设置和使用

第一种,同时支持横屏和竖屏。 1)这种方式如果屏幕的布局在横屏和竖屏没有明显的差异,是不需要设置的,系统会默认旋转。 2)横屏和竖屏的布局明显的差异,比如横屏的时候可能会分成左右两屏,那么就需要我们进行相关的设置,这种情况下,一种布局文件是无法满足2种方向上的需要。 步骤如下:  首先需要在androidmanifest.xml中加入配置android:configChanges=

lijin_2009的专栏 497

SAP Fiori Launchpad 自定义层文本翻译实战:精准修正 Tile、Catalog 与 Group 标题

SAP Fiori 项目中,入口层(tile/catalog/group)的翻译问题常被忽视,但其直接影响用户体验。与前端i18n不同,这些文本属于平台配置数据,需通过ABAP标准翻译流程(SE63)处理。关键步骤包括:使用/UI2/FLC定位Text ID和Configuration ID,根据前缀区分Main/Property WD Config Key,在SE63中锁定WDY_CONF_USERT2表对象进行翻译。操作时需注意使用系统源语言环境,翻译完成后可能需要清理缓存。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 170

关于Android横竖屏的设置和使用

Android可以支持横屏和竖屏,很多面试题都问Android横竖屏切换时Activity的生命周期。网上对于这个的解释算是相当详尽了。今天遇到的问题是Android应用程序中设置横竖屏的一些问题: 1.如果要想在程序中只使用一种屏幕方式,横屏或者竖屏不跟随系统转换转换自己的屏幕,那么需要在...

147

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

Qt安卓开发经验

pro中引入安卓拓展模块 QT += androidextras 。 pro中指定安卓打包目录 ANDROID_PACKAGE_SOURCE_DIR = $$PWD/android 指定引入安卓特定目录比如程序图标、变量、颜色、java代码文件、jar库文件等。 AndroidManifest.xml 每个程序唯一的一个全局配置文件,里面xml格式的数据,标明支持的安卓版本、图标位置、横屏竖屏、权限等。这个文件是最关键的,如果没有这个文件则Qt会默认生成一个。 android/res/drawable-

木牛的博客 3911

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Android横竖屏总结全

Android横竖屏要解决的问题应该就两个:一.布局问题二.重新载入问题1.布局问题:如果不想让软件在横竖屏之间切换,最简单的办法就是在项目的AndroidManifest.xml中找到你所指定的activity中加上android:screenOrientation属性,他有以下几个参数:“unspecified”:默认值 由系统来判断显示方向.判定的策略是和设备相关的,所以不同的设备会有不同的显

TIANWENJU 1902

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Android横竖屏切换总结

Android横竖屏切换总结

hffyfdt的博客 531

横竖屏切换相关:

a . 配置文件Manifest中给activity加  android:configChanges="orientation|keyboardHidden"可以防止重新加载activity,         加android:screenOrientation="portrait"可强制竖屏     b . android:configChanges="orientation|keyboar

这里才是学习Android的好地方 1141

android横竖屏切换

横竖屏切换方法:     1.自动切换:         1.通过在androidManifest.xml的activity节点添加screenOrientation属性: //screenOrientation属性说明: unspecified:默认值,由系统决定; lands...

divaid的博客 8596

android实现自动横竖屏切换,android 中实现横竖屏切换【原创】

我们在使用android手机的时候,发现一些应用有横竖屏切换的功能,一般实现有以下几种方法:一、设置1.通过XML设置横竖屏切换在项目的 AndroidManifest.xml中找到你所指定的activity中加上android:screenOrientation属性,它有以下几个参数:“unspecified” 默认值 由系统来判断显示方向.判定的策略是和设备相关的,所以不同的设备会有不同的显示...

weixin_42478292的博客 1725

android 获得屏幕方向,Android 获取设置屏幕横竖屏

Android 获取设置屏幕横竖屏发布时间:2020-08-06 03:23:17来源:51CTO阅读:351作者:huyanruirui方法一:screenOrientation = application.getResources().getConfiguration().orientation;方法二:screenOrientation = activity.getRequestedOrie...

weixin_30586417的博客 2026

android_判断横竖屏以及设置方式

判断横竖屏: 方式一: //调用getWidth()或getHeight()的方法已经过期了 //int width = getWindowManager().getDefaultDisplay().getWidth(); //int height = getWindowManager().getDefaultDisplay().getHeight(); //DisplayMetrics

2014

【转】Android横竖屏切换问题

Android横竖屏切换总结(Android资料)   Android横竖屏要解决的问题应该就两个: 一.布局问题 二.重新载入问题 1.布局问题:如果不想让软件在横竖屏之间切换,最简单的办法就是在项目的AndroidManifest.xml中找到你所指定的activity中加上android:screenOrientation属性,他有以下几个参数: "unspecified":默认

移动开发砖家-扫地僧 717
上一篇: Android中怎么让你的layout适应屏幕的大小
下一篇: android横竖屏总结
androidboy365
博客等级 码龄16年 35粉丝 32原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值