文档章节

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 PWA存在的“坑”

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

ceshu
08/02
0
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/安卓全能视频播放器推荐

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

己立
07/22
0
0
iOS 实现输入框跟随键盘自动上移

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

还是不够辣
2017/04/12
0
0
cocos2d-x 横竖屏切换崩溃BUG

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

予木
2013/09/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

springboot中filter的用法

一、在spring的应用中我们存在两种过滤的用法,一种是拦截器、另外一种当然是过滤器。我们这里介绍过滤器在springboot的用法,在springmvc中的用法基本上一样,只是配置上面有点区别。 二、f...

xiaomin0322
26分钟前
4
0
java项目修改了更换了jdk版本报错进行修改

java项目原来用的是1.8版本的,改成1.7版本后,项目会报错,要进行的修改是 然后是clean一下项目,然后是选中项目的buildpath,然后是configurebuildpath,然后是看jdk是否进行修改...

myAll_myAll
38分钟前
4
0
Gartner 2018 数据库系列报告发布 巨杉数据库连续两年入选

近期,Gartner陆续发布了2018年的数据库系列报告,包括《数据库魔力象限》《数据库核心能力》以及《数据库推荐报告》。其中,SequoiaDB巨杉数据库作为业界领先的金融级分布式交易型数据库产品...

巨杉数据库
40分钟前
2
0
Navicat闲置一段时间卡死问题的解决

先关闭连接,再右键点击所需要设置的链接,进入编辑连接,进入高级项,勾选保持连续间隔(秒):时间设置短一些,比如30秒,完成!!

joyStalker
41分钟前
2
0
理解Java中的弱引用(Weak Reference)

1. What——什么是弱引用? Java中的弱引用具体指的是java.lang.ref.WeakReference<T>类,我们首先来看一下官方文档对它做的说明: 弱引用对象的存在不会阻止它所指向的对象变被垃圾回收器回...

绝地逢生
41分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部