iOS 个别页面强制横屏,其他页面竖屏

在开发项目的时候,遇到了一个问题,就是其中一个页面需要强制横屏,而其他页面要强制竖屏。

我的解决方法是这样的。在AppDelegate.h里面添加@property(nonatomic,assign)NSInteger allowRotation;
在AppDelegate.m文件里面添加

 1 - (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window
 2 {
 3     if (_allowRotation == 1) {
 4         return UIInterfaceOrientationMaskLandscapeRight;
 5     }
 6     else
 7     {
 8         return (UIInterfaceOrientationMaskPortrait);
 9     }
10 }

这样默认所以的页面就是竖屏的,在要强制横屏的页面的控制器UIViewController里面,引入#import "AppDelegate.h"

然后

- (void)viewDidLoad
{
    [super viewDidLoad];
    AppDelegate * appDelegate = (AppDelegate *)[UIApplication sharedApplication].delegate;
    appDelegate.allowRotation = 1;
}

就可以让个别页面单独横屏了

时间: 2024-09-28 22:10:46

iOS 个别页面强制横屏,其他页面竖屏的相关文章

H5页面 强制横屏显示 适配IOS和安卓

H5页面 强制横屏显示 适配IOS和安卓 <script> var evt = "onorientationchange" in window ? "orientationchange" : "resize"; $(window).resize(function(){ resize(); }); window.addEventListener(evt, resize(), false); function resize(){ var

Css实现手机端页面强制横屏

样式 @media screen and (orientation: portrait) { html{ width : 100vmin; height : 100vmax; } body{ width : 100vmin; height : 100vmax; } #gyroContain{ width : 100vmax; height : 100vmin; transform-origin: top left; transform: rotate(90deg) translate(0,-10

iOS的横屏(Landscape)与竖屏(Portrait)InterfaceOrientation

转自:http://www.molotang.com/articles/1530.html 接着上篇写的触摸事件,这次借机会整理下iOS横屏和竖屏的翻转方向支持,即InterfaceOrientation相关的内容. 最近做一个页面,最初并没有太多考虑orientation的情况,当其嵌入到一个在iPad上使用横屏(Landscape)的应用中,就会只显示在屏幕的左面,而且貌似还没显示全,这个……很丑!发自内心地觉得这么做对不起苹果的设计理念!对不起乔老爷子... 改!说到该就要了解苹果开发中对

ios 相机界面强制横屏

IOS调用系统的相机默认是竖屏的,网上找了很多方法强制横屏都无效,以下代码经测试兼容ios78 自定义一个UIImagePickerController并且覆盖以下方法: -(UIInterfaceOrientation)preferredInterfaceOrientationForPresentation { return UIInterfaceOrientationLandscapeLeft; } - (NSUInteger)supportedInterfaceOrientations{

移动端如何让页面强制横屏

求横屏显示,不能竖屏.有经验的你肯定知道,当用户竖屏打开时,提示说你要把手机转过来是在是件很傻×的事情.这时如果用户没开启手机里的横屏模式,还要逼用户去开启.这时候用户早就不耐烦的把你的游戏关掉了.那么现在的解决办法,就是在竖屏模式下,写一个横屏的div,然后把它转过来. 代码如下: <body class="webpBack"> <div id="print"> <p>lol</p> </div> <

Unity3D开发安卓应用如何设置横屏显示和竖屏显示

说起 Unity3D 开发安卓应用设置屏幕方向,大家肯定都知道在发布的时候可以设置,也就是在下图所示的位置设置,分别表示:正向竖屏显示.倒向竖屏显示.右横屏显示.左横屏显示.跟随手机自动旋转.图一是设置屏幕显示的正方向,图二是设置允许显示的方向. 而且网上基本上也都是介绍的这种办法.这种方法有个弊端,就是设置了横屏或者竖屏后,那么应用在运行过程中,就是永远是横屏或者竖屏显示,无法更改. 博主我这次在开发项目中,拿到的需求是有些场景下横屏显示,有些场景下竖屏显示,这就太尴尬了,用上面的方法根本行不

怎么判断手机屏幕是横屏的,还是竖屏的

window.onload = function(){ //横竖屏 function doOnOrientationChange(){ switch(window.orientation){ case 90: transverse(); break; case -90: transverse(); break; default: vertical(); break; } } window.addEventListener("onorientationchange" in window

单个ViewController支持横屏,其他全竖屏方法-b

如果项目中用了navigationViewController, 那么就应该新建一个uinavigationViewController的子类,然后在这个类里面写上下面的代码,在使用的时候就用自定义的这个navCtr, 就是说需要在根视图里面控制 - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation { return toInterfaceOrientation 

使所有页面都屏幕不能旋转(始终竖屏)

是不是很想有一种方法,使写一次代码,就可以使所有的页面屏幕都在不旋转(即在屏幕转的时候,字幕并不会改变) 首先上下结构图: 上代码: #import "AppDelegate.h" #import "RootViewController.h" @implementation AppDelegate - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDic