zoukankan      html  css  js  c++  java
  • iOS开发——高级篇——iPad开发、iPad开发中的modal

    一、iPad简介


    1、什么是iPad
    一款苹果公司于2010年发布的平板电脑
    定位介于苹果的智能手机iPhone和笔记本电脑产品之间
    跟iPhone一样,搭载的是iOS操作系统

    2、iPhone和iPad
    iPhone是手机,iPad是平板电脑

    iPhone和iPad开发的区别
    UI元素的排布 设计
    键盘
    API
    屏幕方向的支持
    … …

    3、屏幕的尺寸 分辨率
    在iOS开发中,只需要关注以下几种情况
    iPhone
    3.5 inch:320 x 480
    4.0 inch:320 x 568
    4.7inch : 375 x 667
    5.5 inch : 414 x 736

    iPad、iPad Mini
    9.7 inch、7.9 inch:768 x 1024

    因为iPad屏幕比iPhone大,可以容纳更多的UI元素,因此排列方式是不一样的
    iPad的虚拟键盘多了个退出键盘的按钮

    4、iPad特有的API
    iPad多了一些特有的类,比如:
    UIPopoverController
    UISplitViewController
    … …

    有些API在iPhone和iPad都能用,但是显示效果是有差异的,比如UIActionSheet

    5、屏幕方向的支持
    iPhone支持3个方向
    iPad支持4个方向

    一般情况下,iPhone应用就一种屏幕方向,要么竖屏,要么横屏(游戏)
    其次,苹果官方建议:iPad应用最好同时支持横屏、竖屏两种方向

    6、总结
    设备支持的应用程序
    iPhone上只能运行iPhone程序
    iPad上能够运行iPhone iPad程序

    开发过程
    iPhone和iPad开发的流程是一致的
    在iPhone开发中学到的所有知识基本都能用在iPad上


    二、iPad开发的modal


    1、简介
    在iPhone开发中
    Modal是一种常见的切换控制器的方式
    默认是从屏幕底部往上弹出,直到完全盖住后面的内容为止

    在iPad开发中
    Modal的使用频率也是非常高的
    对比iPhone开发,Modal在iPad开发中多了一些用法


    2、呈现样式
    什么叫呈现样式
    Modal出来的控制器,最终显示出来的样子

    Modal常见有4种呈现样式
    UIModalPresentationFullScreen :全屏显示(默认)
    UIModalPresentationPageSheet
    宽度:竖屏时的宽度(768)
    高度:当前屏幕的高度(填充整个高度)
    UIModalPresentationFormSheet :占据屏幕中间的一小块
    UIModalPresentationCurrentContext :跟随父控制器的呈现样式

    3、过渡样式
    什么叫过渡样式
    Modal出来的控制器,是以怎样的动画呈现出来

    Modal一共4种过渡样式
    UIModalTransitionStyleCoverVertical :从底部往上钻(默认)
    UIModalTransitionStyleFlipHorizontal :三维翻转
    UIModalTransitionStyleCrossDissolve :淡入淡出
    UIModalTransitionStylePartialCurl :翻页(只显示部分,使用前提:呈现样式必须是UIModalPresentationFullScreen)

    三、开发中的注意点


    1、判断横竖屏幕

    BOOL isLandscape = self.view.width == 1024;
    在IPad开发中一般通过宽高判断当前横竖屏状态

    2、在屏幕即将旋转的时候会调用下面的方法
    - (void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>)coordinator
    {
      // 1.拿到屏幕的方向
      BOOL isLandscape = size.width == 1024;

    }

    3、状态栏设置(和iPhone一样)

    - (UIStatusBarStyle)preferredStatusBarStyle
    {
    return UIStatusBarStyleLightContent;
    }

    待续。。。

  • 相关阅读:
    Windows环境下安装Hadoop+Hive的使用案例
    基于hadoop的离线分析大数据工具Hive的架构图
    springboot集成elasticsearch
    亿级流量场景下,大型架构设计实现【全文检索高级搜索---ElasticSearch篇】-- 中
    海量数据,大数据处理技术--分布式数据库【Hbase】
    亿级流量场景下,大型架构设计实现【全文检索高级搜索---ElasticSearch篇】-- 上
    zookeeper安装以及遇到的一些坑
    亿级流量场景下,大型架构设计实现【2】---storm篇
    用到UdpClient的一点经验
    随笔
  • 原文地址:https://www.cnblogs.com/chglog/p/4872640.html
Copyright © 2011-2022 走看看