文档章节

检测屏幕方向的变化的方法

Freewheel
 Freewheel
发布于 2015/05/16 19:25
字数 241
阅读 17
收藏 1


  网上大多数的检测屏幕方向的变化的方法的代码如下:


WindowManager wm = getWindowManager(); 
Display d = wm.getDefaultDisplay(); 

if (d.getWidth() > d.getHeight()) { 
//---landscape mode 横屏--- 

} 
else { 
//---portrait mode 竖屏--- 

}



但是,由于display的getWidth和getHeight方法被废弃了


于是我摸索了一下使用getSize()的方法,代码如下:


WindowManager windowManager = getWindowManager();

        Display display = windowManager.getDefaultDisplay();

        Point point=new Point();

        EditText editText = (EditText)findViewById(R.id.edit_text1);

        display.getSize(point);

        if(point.x>point.y){
            editText.setHint(" This is land layout!");
        }else{
            editText.setHint(" This is portrait layout!");
        }


另外还有一种方法:

使用getRequestedOrientation()方法,不过使用这个方法的前提是得在在AndroidManifest.xml当中需要设置Activity的Android:screenOrientation属性

代码如下:

<activity android:name=".thirdAty"
            android:screenOrientation="userPortrait">
            <intent-filter>
                <action android:name="com.example.administrator.layout_3zhang.thirdAty"/>
                <category android:name="android.intent.category.DEFAULT"/>
            </intent-filter>
        </activity>



int orientation = getRequestedOrientation();
        if(orientation==ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE){
            //横屏
        }else if(orientation==ActivityInfo.SCREEN_ORIENTATION_PORTRAIT){
            //竖屏
        }

这个方法详细参考自:http://blog.sina.com.cn/s/blog_9c153bc60101a4my.html



© 著作权归作者所有

Freewheel
粉丝 10
博文 83
码字总数 48265
作品 0
普陀
程序员
私信 提问
iPhone屏幕尺寸随屏随设备方向改变带来的宽高问题

设备方向,屏幕方向,如果不设置不允许转屏,屏幕方向会随着手机方向转变,应该与重力有关。这个有空研究一下。 竖屏下宽高分别为320.640.转屏后检测到的宽高分别为640,320互换了。这个需要...

水一样的人儿
2016/01/08
3
0
用 Python 实现打飞机,让子弹飞吧!

所用技术和软件 python 2.7 pygame 1.9.3 pyCharm 准备工作 安装好 pygame 在第一次使用 pygame 的时候,pyCharm 会自动 install pygame。 下载好使用的素材。 技术实现 初始化 pygame 首先要...

猫咪编程
2018/07/21
0
0
Android系统中传感器相关的简介

大多数主流的android手机都有内置的传感器,可以用来测方向,位置,环境。通常精确度都很高,应用的领域也自然很广泛。例如重力传感器,很多的游戏都需要靠它来操作,通过检测重力系统的变化...

长平狐
2013/04/25
133
0
ios8之后的界面旋转简单原理

调整约束优先级,不一定都是250.750或者1000 有时不管怎么调整,约束优先级都要大于某个值,只是焦点的俩个可以在大于某个值的范围内取大小值。 ios8之后不用interfaceOrientation属性来判断...

水一样的人儿
2016/08/17
16
0
使用Matlab对二值图像进行轮廓提取

转自:http://blog.csdn.net/q1302182594/article/details/50394576 本文主要总结一下在matlab中可用于进行轮廓提取的函数。 1 bwperim 根据参考资料[2]的提示,可以使用bwperim()函数进行轮...

u013066730
2017/02/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

计算机网络

计算机网络体系结构 OSI 其中表示层和会话层用途如下: 表示层 :数据压缩、加密以及数据描述,这使得应用程序不必关心在各台主机中数据内部格式不同的问题。 会话层 :建立及管理会话。 五层...

一只小青蛙
今天
2
0
0.01-Win10安装linux子系统

一、安装Debian子系统 -1、控制面板设置: -1.1、打开“控制面板” —— “程序” —— “启用或关闭Windows功能” —— 勾选 “适用于Linux的Windows子系统” -2、设置: -2.1、打开“设置”...

静以修身2025
昨天
2
0
init 0-6 (启动级别:init 0,1,2,3,4,5,6)

启动级别: init 0,1,2,3,4,5,6 这是个很久的知识点了,只是自己一直都迷迷糊糊的,今天在翻出来好好理解下。。 0: 停机 1:单用户形式,只root进行维护 2:多用户,不能使用net file system...

圣洁之子
昨天
2
0
Android Camera HAL浅析

1、Camera成像原理介绍 Camera工作流程图 Camera的成像原理可以简单概括如下: 景物(SCENE)通过镜头(LENS)生成的光学图像投射到图像传感器(Sensor)表面上,然后转为电信号,经过A/D(模数转...

天王盖地虎626
昨天
2
0
聊聊Elasticsearch的ProcessProbe

序 本文主要研究一下Elasticsearch的ProcessProbe ProcessProbe elasticsearch-7.0.1/server/src/main/java/org/elasticsearch/monitor/process/ProcessProbe.java public class ProcessProb......

go4it
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部