zoukankan      html  css  js  c++  java
  • iOS开发>学无止境

    禁止转屏 : 

      在AppDelegate.m中增加这个方法,就可以禁止转屏

      - (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window  
          {  
               return UIInterfaceOrientationMaskPortrait;  
          }  

    某一个界面可以转屏:

      需要写一个tabBarController的类,并写上以下方法

      

    #import "MFTabBarViewController.h"

    #import "UINavigationController+Autorotate.h"

    @interface MFTabBarViewController ()

    @end

    @implementation MFTabBarViewController

    - (void)viewDidLoad {

        [super viewDidLoad];

        // Do any additional setup after loading the view.

    }

    - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {

        return (interfaceOrientation == UIInterfaceOrientationPortrait);

    }

    - (UIInterfaceOrientationMask)supportedInterfaceOrientations {

        return UIInterfaceOrientationMaskPortrait;

    }

    - (BOOL)shouldAutorotate

    {

        return YES;

    }

    -(BOOL)prefersStatusBarHidden

    {

        return NO;

    }

    @end

    再创建一个 navigationViewController 的类 , 并写入以下方法

    #import <UIKit/UIKit.h>

    @interface UINavigationController (Autorotate)

    - (BOOL)shouldAutorotate;

    - (NSUInteger)supportedInterfaceOrientations;

    @end

    #import "UINavigationController+Autorotate.h"

    @implementation UINavigationController (Autorotate)

    ////返回最上层的子Controller的shouldAutorotate

    ////子类要实现屏幕旋转需重写该方法

    //- (BOOL)shouldAutorotate{

    //    return self.topViewController.shouldAutorotate;

    //}

    //

    ////返回最上层的子Controller的supportedInterfaceOrientations

    //- (NSUInteger)supportedInterfaceOrientations{

    //    NSLog(@"%@", self.topViewController);

    //    return self.topViewController.supportedInterfaceOrientations;

    //}

    - (BOOL)shouldAutorotate {

        if (self.topViewController != nil)

            return [self.topViewController shouldAutorotate];

        else

            return [super shouldAutorotate];

    }

    - (NSUInteger)supportedInterfaceOrientations {

        if (self.topViewController != nil)

            return [self.topViewController supportedInterfaceOrientations];

        else

            return [super supportedInterfaceOrientations];

    }

    - (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation {

        if (self.topViewController != nil)

            return [self.topViewController preferredInterfaceOrientationForPresentation];

        else

            return [super preferredInterfaceOrientationForPresentation];

    }

    @end

    本内容来自: 超越昨天(学无止境) - http://www.cnblogs.com/xvewuzhijing/
  • 相关阅读:
    EntityFramework中的线程安全,又是Dictionary
    记一次w3wp占用CPU过高的解决过程(Dictionary和线程安全)
    这一个月
    使用Nginx解决IIS绑定域名导致应用程序重启的问题
    Bootstrap for MVC:Html.Bootstrap().TextBoxFor(model=>model.Name)
    Orchard 刨析:Logging
    Orchard 刨析:Caching
    Orchard 刨析:前奏曲
    Orchard 刨析:导航篇
    数据集
  • 原文地址:https://www.cnblogs.com/xvewuzhijing/p/4905461.html
Copyright © 2011-2022 走看看