关于屏幕旋转的几种情况

一、设备旋转(上苹果商店有风险)

*这种方法当在General中勾选了Device Orieation 的Protrait后再用下面代码不能设置屏幕旋转至横屏。

if ([[UIDevice currentDevice] respondsToSelector:@selector(setOrientation:)]) {

[[UIDevice currentDevice] performSelector:@selector(setOrientation:)

withObject:(id)UIInterfaceOrientationPortrait];

}

二、视图旋转(假旋转,将当前视图旋转)

//AppCan应用引擎里边将Config.xml的属性设置为5,仅竖屏显示。<orientation>5</orientation>,将视图旋转至横屏状态,重新设置当前视图bounds值。

[[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationPortrait];

UIImageView * imagev = (UIImageView*)meBrwView;

imagev.transform = CGAffineTransformMakeRotation(M_PI*2);

CGRect frame = [UIScreen mainScreen].applicationFrame;

NSLog(@"%f,%f,%f,%f",frame.origin.x,frame.origin.y,frame.size.height,frame.size.width);

imagev.bounds = CGRectMake(0, 0, frame.size.width, frame.size.height);

时间: 2024-10-15 13:48:41

关于屏幕旋转的几种情况的相关文章

【分享】迅为iTOP4412开发板-Android系统屏幕旋转设置

1.1概述 Android4.0,Androd4.4源代码能够编译成手机模式和平板模式,讯为iTop4412 开发平台 的Android系统默认编译为平板模式.客户须要依据自己的产品设计及应用环境,切换屏幕 的显示方向,或者固定好一个显示方向,比如产品中使用不同分辨率的显示屏,或者显示屏 在产品中的固定方向发生改变等等,都须要进行屏幕旋转功能.  那么怎样设置屏幕的旋转 呢?我们提供两种方式满足客户的这一需求. 1.2  安装屏幕旋转APK 迅为公司公布的  Android4.4镜像中含有  S

iOS实现屏幕旋转

iOS实现屏幕旋转有两种方式 1. 应用本身支持 2. 手动旋转UIView (这种方式我没找到旋转 系统控件的方法 如:键盘.导航.UIAlertView) 如果你只是要把竖屏的播放器,做成支持横屏的,没有其他界面操作, 就可以考虑用第二种方式去做,比较简单 ,不过要注意计算view Frame 这两种方式看你具体的使用场景了,具体场景选择合适的方式. 公司项目中有几个界面要支持横竖屏,(直播录制界面.直播观看界面.视频回看界面). 刚开始我想着用第二种方式去解决,但是我们视频录制.观看界面有

View页面内容的旋转,在某些情况下可替代屏幕旋转使用

这个是在做小秘书的体重曲线图的时候用到的,横排的时候可以多显示些内容,可是由于很多未知的冲突导至屏幕旋转起来非常麻烦,可用用旋转页面的内容来达到旋转屏幕的效果. 代码如下: //旋转90度 CGAffineTransform at =CGAffineTransformMakeRotation(M_PI/2); at =CGAffineTransformTranslate(at, (viewContentWidth - viewContentHeight)/2, (viewContentWidth

Android 屏幕旋转 处理 AsyncTask 和 ProgressDialog 的最佳方案

出处:http://blog.csdn.net/lmj623565791/article/details/37936275 1.概述 众所周知,Activity在不明确指定屏幕方向和configChanges时,当用户旋转屏幕会重新启动.当然了,应对这种情况,Android给出了几种方案: a.如果是少量数据,可以通过onSaveInstanceState()和onRestoreInstanceState()进行保存与恢复. Android会在销毁你的Activity之前调用onSaveInst

ios(ipad,iphone)屏幕旋转检测通用方法

在特别的场景下,需要针对屏幕旋转作特殊处理.在ios系统下实现相关的功能还是比较方便的. 我下面介绍两种方法: 1.注册UIApplicationDidChangeStatusBarOrientationNotification通知(举例:在一个viewcontroller类的viewdidload中注册该通知),示例代码如下: [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(statusBarO

屏幕旋转与Transform

iTouch,iPhone,iPad设置都是支持旋转的,如果我们的程序能够根据不同的方向做出不同的布局,体验会更好. 如何设置程序支持旋转呢,通常我们会在程序的info.plist中进行设置Supported interface orientations,添加我们程序要支持的方向,而且程序里面每个viewController也有方法 supportedInterfaceOrientations(6.0及以后) shouldAutorotateToInterfaceOrientation(6.0之

IOS6屏幕旋转详解(自动旋转、手动旋转、兼容IOS6之前系统)

IOS6屏幕旋转详解(自动旋转.手动旋转.兼容IOS6之前系统) 转自:http://blog.csdn.net/cococoolwhj/article/details/8208991 概述: 在iOS6之前的版本中,通常使用 shouldAutorotateToInterfaceOrientation 来单独控制某个UIViewController的方向,需要哪个viewController支持旋转,只需要重写shouldAutorotateToInterfaceOrientation方法.

【译】用Fragment解决屏幕旋转(状态发生变化)产生的状态不能保持的问题

这篇文章解决了在StackOverflow上一个经常被提到的问题. 在配置发生变化(Configuration changs)时,什么是最好的保存活动对象方法,比如运行中的线程,Sockets,AsyncTask. 要回答这个问题,我们要先讨论一些开发者在Activity生命周期中使用长时间后台任务时遇到的共同困难.然后,我们将介绍常见的两种能解决问题但有不好的方法.最后,我们会用一个示例代码说明推荐的解决方案,它用retained fragment来达到我们的目标. 配置改变&后台线程(Con

iOS 判断当前屏幕旋转状态

iOS提供了一个方法 可以很简单的判断当前屏幕旋转到什么状态 UIInterfaceOrientation sataus=[UIApplication sharedApplication].statusBarOrientation; 得到结果有集中情况 他们是按照当前 Home 键在手机的什么位置 得到结果是一个枚举类型 // Note that UIInterfaceOrientationLandscapeLeft is equal to UIDeviceOrientationLandscap