IOS 关于IOS8屏幕的强制旋转与新的特性
来源:互联网 发布:宣传单页制作软件 编辑:程序博客网 时间:2024/04/30 12:19
在IOS8之前旋转屏幕许多种方法,也有许多监听的事件,但是现在都不能使用所以另谋出入
强制竖屏
if ([[UIDevicecurrentDevice] respondsToSelector:@selector(setOrientation:)]) {
SEL selector = NSSelectorFromString(@"setOrientation:");
NSInvocation *invocation = [NSInvocationinvocationWithMethodSignature:[UIDeviceinstanceMethodSignatureForSelector:selector]];
[invocationsetSelector:selector];
[invocationsetTarget:[UIDevicecurrentDevice]];
int val =UIDeviceOrientationPortrait;
[invocationsetArgument:&val atIndex:2];
[invocationinvoke];
}
强制横屏
if ([[UIDevicecurrentDevice] respondsToSelector:@selector(setOrientation:)]) {
SEL selector =NSSelectorFromString(@"setOrientation:");
NSInvocation *invocation = [NSInvocationinvocationWithMethodSignature:[UIDeviceinstanceMethodSignatureForSelector:selector]]; [invocation setSelector:selector];
[invocation setTarget:[UIDevice currentDevice]];
int val =UIDeviceOrientationPortrait;
[invocationsetArgument:&val atIndex:2];
[invocationinvoke];
}
原来的方法不能直接调用,所以需要间接调用,亲自测试过,AppStore上可以审核通过
之后通过监听设备的方向来控制旋转.......................还有需要注意的是IOS7里面[UIScreen mainScreen]的高和宽值是不变的,所以在横屏时候宽是高,高是宽,使用时候需要判断一下,但是IOS8 [UIScreen mainScreen] 的高宽值是会变的,所以在IOS8上横屏的时候就不需要做任何判断直接使用宽高就可以
[[NSNotificationCenterdefaultCenter] addObserver:self
selector:@selector(changeFrames:)
name:UIDeviceOrientationDidChangeNotification
object:nil];
- IOS 关于IOS8屏幕的强制旋转与新的特性
- 【iOS】iOS8 与以前版本比较,添加的新特性
- iOS两个强制旋转屏幕的方法
- iOS两个强制旋转屏幕的方法
- iOS两个强制旋转屏幕的方法
- iOS两个强制旋转屏幕的方法
- iOS两个强制旋转屏幕的方法
- iOS8的新特性
- iOS强制旋转屏幕
- ios屏幕强制旋转
- iOS强制屏幕旋转
- iOS屏幕强制旋转
- iOS 强制屏幕旋转
- iOS 强制旋转屏幕
- 简述iOS8的新特性
- iOS8 Xcode6的新特性
- iOS7、iOS8的新特性
- (0058)iOS开发之iOS8新特性IBDesignable的使用
- Java十一期项目实战,璞玉成器
- python第一天
- 活着——活着就是对生命最好的尊重
- 免费中文分词系统与资源收集
- 职场终极密籍--记我的职业生涯
- IOS 关于IOS8屏幕的强制旋转与新的特性
- error: undefined reference to 'vtable for
- 小米首次挤下三星 坐上中国智能手机第一宝座
- :not(selector)
- 深入浅出设计模式 ------ Factory Method(工厂方法)
- 对java:comp/env的研究
- 测试
- chrome浏览器提示:object is not a function
- error LNK2026: 模块对于 SAFESEH 映像是不安全的