• 关于iphone和ipad横屏竖屏 适配问题


    首先 先在viewWillAppear 里面 注册通知

    - (void)viewWillAppear:(BOOL)animated

    {

        [super viewWillAppear:animated];

        //注册屏幕旋转 消息通知

        [[NSNotificationCenter defaultCenter] addObserver:self

                                                 selector:@selector(changeFrames:)

                                                     name:UIDeviceOrientationDidChangeNotification

                                                   object:nil];

        }

    viewDidLoad 初始化控件 

    收到通知后

    //收到通知后改变view坐标

    -(void)changeFrames:(NSNotification *)notification

    {

        CGRect rect = [UIScreen mainScreen].bounds;

        

        if ([[UIDevice currentDevice] orientation]==UIInterfaceOrientationPortrait

            || [[UIDevice currentDevice] orientation]==UIInterfaceOrientationPortraitUpsideDown)

        {

            NSLog(@"portrait");

            _fancyTabBar.frame=CGRectMake(rect.size.width-300,rect.size.height-300, 300, 300);

        }

        else

        {

            NSLog(@"横屏");

            _fancyTabBar.frame=CGRectMake(rect.size.height-40,rect.size.width-550, 300, 300);

        }

    }

    如果是ipad 版

    //收到通知后改变view坐标

    -(void)changeFrames:(NSNotification *)notification

    {

        CGRect rect = [UIScreen mainScreen].bounds;

        

        if ([[UIDevice currentDevice] orientation]==UIInterfaceOrientationPortrait)

        {

            NSLog(@"竖屏home在下");

            _fancyTabBar.frame=CGRectMake(rect.size.width-550,rect.size.height-550, 600, 700);

        }

        else if ([[UIDevice currentDevice] orientation]==UIInterfaceOrientationPortraitUpsideDown)

        {

            NSLog(@"竖屏home在下");

            _fancyTabBar.frame=CGRectMake(rect.size.width-550,rect.size.height-550, 600, 700);

            

        } else if ([[UIDevice currentDevice] orientation] == UIDeviceOrientationLandscapeLeft ){

            

            NSLog(@"横屏home在左");

            _fancyTabBar.frame=CGRectMake(rect.size.height-300,rect.size.width-800, 600, 600);

            

        } else{

            

            NSLog(@"横屏home在右");

            _fancyTabBar.frame=CGRectMake(rect.size.height-300,rect.size.width-800, 600, 600);

        }

        

    }

  • 相关阅读:
    iOS开发UI篇—简单介绍静态单元格的使用
    iOS开发UI篇—UITableview控件使用小结
    iOS开发UI篇—使用纯代码自定义UItableviewcell实现一个简单的微博界面布局
    iOS开发UI篇—使用xib自定义UItableviewcell实现一个简单的团购应用界面布局
    iOS开发UI篇—实现UItableview控件数据刷新
    iOS开发UI篇—使用嵌套模型完成的一个简单汽车图标展示程序
    iOS开发UI篇—UITableviewcell的性能问题
    iOS开发UI篇—UITableview控件基本使用
    iOS开发UI篇—UITableview控件简单介绍
    A1055. The World's Richest
  • 原文地址:https://www.cnblogs.com/panfeng1104/p/4496974.html
Copyright © 2020-2023  润新知