文档章节

iOS 关于横屏

山里来的
 山里来的
发布于 2017/07/13 14:49
字数 300
阅读 6
收藏 0

1,旋转手机跟随转动

- (BOOL)shouldAutorotate
{
     return NO; //yes旋转 no不旋转
}

- (UIInterfaceOrientationMask)supportedInterfaceOrientations
{
    
    return UIInterfaceOrientationMaskPortrait; //支持的方.点进去可以看到是个枚举值,有肖像模式,左横屏,右横屏,上下颠倒,所有方向等等
}

坑来了,你会发现shouldAutorotate方法不调用。 如果只有ViewController的话,shouldAutorotate,一定会走的,但是关键是我们项目都是navigationController,shouldAutorotate方法就不会走了.属于方法被navigationController拦截了.这样就需要在你的navigationController基类添加以下代码:

-(BOOL)shouldAutorotate{
    return self.topViewController.shouldAutorotate;
}

可能还是不会调用,因为我们项目用了tabbarController。所以在你的tabbarController的基类里边添加如下代码:

- (BOOL)shouldAutorotate{
    return self.selectedViewController.shouldAutorotate;
}

这样就可以了。

2,把当前的view旋转90°或者180° 监听屏幕旋转

[UIView animateWithDuration:0.25 animations:^{
                self.view.transform = CGAffineTransformMakeRotation(0);
                self.view.frame = CGRectMake(0, 0, kIPHONE_WIDTH, kIPHONE_HEIGHT);
            }];

这是个掩耳盗铃的方法,只是旋转了view。部分情况也可以这样简单处理

3,单独定义一个全局变量来管理是否允许横屏。(适合横屏比较多的项目)

4,强行设置屏幕方向(简单粗暴,)

NSNumber *value = [NSNumber numberWithInt:UIInterfaceOrientationLandscapeRight];  
    [[UIDevice currentDevice] setValue:value forKey:@"orientation"]; 

© 著作权归作者所有

共有 人打赏支持
山里来的
粉丝 8
博文 97
码字总数 18104
作品 0
长沙
旧工程适配iOS 6和iPhone 5的一些故事

2012-09-29 By dapps  旧工程适配iOS 6和iPhone 5的一些故事抢沙发 分类:iPhone开发 标签:iOS 6、iPhone 5、Retina、适配iOS 6、适配iPhone 5 国内最专业的APP开发者社区,dApps! 苹果每...

Orange1
2012/10/30
0
0
移动端iOS PWA存在的“坑”

最近,我在开发PWA时,发现iOS端存在诡异的问题。 一、症状 竖屏时,内容显示正常,状态栏为显示状态 第一次横屏(-90°或90°)----- 内容显示正常,状态栏被隐藏 从90°旋转至-90°,或从-...

ceshu
08/02
0
0
iOS/安卓全能视频播放器推荐

前言 前几天有朋友下载了些 ts 格式的高清电视剧,但是没法在 iPad(iOS) 上播放,只好先在电脑上转换成 MP4 格式,转换起来很花时间,结果也不如意。 其实现在各平台都有全格式支持的播放器,...

己立
07/22
0
0
cocos2d-x 横竖屏切换崩溃BUG

cocos2d默认的是横屏,找到ios6.0横竖屏切换响应的函数 修改后,程序却意外的崩溃。 解决方案 在AppDelegate.m的AppController类下添加函数:

予木
2013/09/06
0
0
iOS 实现输入框跟随键盘自动上移

场景还原 有些时候在包含输入框的页面中,点击输入框输入会因键盘弹起而遮挡住一部分输入框,影响用户体验。iOS在默认情况下并不会处理这种问题,不过我们可以自己实现键盘弹起输入框自动上移...

还是不够辣
2017/04/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

造谣造到t-io老巢了

只发当事人的截图,不发表评论,以免有引导嫌疑 PS1:截图是由不同的人发过来的 PS2:本人已经不在此微信群 PS3:图3是2018-09-23的t-io官方群的一个发言小统计,有助于让人认识到他们的其中...

talent-tan
45分钟前
60
0
heartbeat 资源

drbd+apache+heartbeat : http://blog.51cto.com/11838039/1827901 heartbeat双机热备的架设 : http://blog.51cto.com/11838039/1827560 对heaetbeat的深一步认识 : http://blog.51cto.co......

寰宇01
今天
4
0
Spring 转换 model 为 json 时增加属性

缘起 目前的项目中有个需求是在附件对象转换成 json 时增加个 url 属性,以前的方式是在返回附件对象或列表时候做一次统一处理,这次想看看 spring 或者 jackson fasterxml 是否自带类似功能...

郁也风
今天
3
0
10大PHP比特币开源项目

如果你是一个Phper,如果你希望学习区块链,那么本文列出的 10个开源的Php比特币项目,将有助于你了解在自己的应用中 如何加入对比特币的支持。 如果你希望快速掌握使用Php对接比特币钱包的方...

汇智网教程
今天
5
0
springclould feign客户端添加全局参数

用springclould feign作为调用服务的客户端,一般来说参数可以写在feignclient的方法参数里 有时需要所有feign请求都统一添加一些参数,例如token用于鉴权等,可以这样做: 添加一个配置类,...

canneljls
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部