[iOS]modalPresentationStyle和modalTransitionStyle

本文介绍了iOS中使用present方式呈现viewController时,modalPresentationStyle的不同样式,特别是针对iPhone和iTouch的三种主要样式。同时提到了modalTransitionStyle用于自定义modal动画的选项,并列举了几种常见动画类型。

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

首先说一下modalPresentationStyle。

当你用present的方式呈现一个viewController的时候,可以设置将要弹出的viewcontroller的展示样式,对于iPhone和iTouch来说,一般主要就是三种。

先看一下所有的。

typedef NS_ENUM(NSInteger, UIModalPresentationStyle) {
        UIModalPresentationFullScreen = 0,
        UIModalPresentationPageSheet NS_ENUM_AVAILABLE_IOS(3_2) __TVOS_PROHIBITED,
        UIModalPresentationFormSheet NS_ENUM_AVAILABLE_IOS(3_2) __TVOS_PROHIBITED,
        UIModalPresentationCurrentContext NS_ENUM_AVAILABLE_IOS(3_2),
        UIModalPresentationCustom NS_ENUM_AVAILABLE_IOS(7_0),
        UIModalPresentationOverFullScreen NS_ENUM_AVAILABLE_IOS(8_0),
        UIModalPresentationOverCurrentContext NS_ENUM_AVAILABLE_IOS(8_0),
        UIModalPresentationPopover NS_ENUM_AVAILABLE_IOS(8_0) __TVOS_PROHIBITED,
        UIModalPresentationNone NS_ENUM_AVAILABLE_IOS(7_0) = -1,         
};

其中前四种和UIModalPresentationPopover
对于iPhone和iTouch来说,都是一样的。

Custom类型的话,需要用户自己去重写动画,利用

UIViewControllerContextTransitioning

协议,这块东西比较多,以后有时间再写吧。

UIModalPresentationOverFullScreen
UIModalPresentationOverCurrentContext
这两种动画上没有区别,但是之前的viewcontroller的view会被放在下面,不会被移除。


最后一个一用就崩,没仔细研究。


下面说一下modalTransitionStyle

这个是修改modal动画用的,有下面几种。

typedef NS_ENUM(NSInteger, UIModalTransitionStyle) {
    UIModalTransitionStyleCoverVertical = 0,
    UIModalTransitionStyleFlipHorizontal __TVOS_PROHIBITED,
    UIModalTransitionStyleCrossDissolve,
    UIModalTransitionStylePartialCurl NS_ENUM_AVAILABLE_IOS(3_2) __TVOS_PROHIBITED,
};
第一种就不讲了,就是普通动画,然后我展示一下下面的三种动画。

UIModalTransitionStyleFlipHorizontal



UIModalTransitionStyleCrossDissolve

UIModalTransitionStylePartialCurl


好了,就到这了。

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值