文档章节

presentViewController:animated:completion:的特殊之处

yoyoso
 yoyoso
发布于 2015/02/28 14:52
字数 224
阅读 1805
收藏 0
点赞 0
评论 0

原型:

- (void)presentViewController:(UIViewController *)viewControllerToPresent animated:(BOOL)flag completion:(void (^)(void))completion


描述:

Presents a view controller modally.
  In a horizontally compact environment, the presented view is always full screen. In a horizontally regular environment, the presentation depends on the value in the modalPresentationStyle property.
    This method sets the presentedViewController property to the specified view controller, resizes that view controller'€™s view based on the presentation style and then adds the view to the view hierarchy. The view is animated onscreen according to the transition style specified in the modalTransitionStyle property of the presented view controller.
The completion handler is called after the viewDidAppear: method is called on the presented view controller.

注意上面红色文字的地方。

一般来说,页面跳转必须在viewDidLoad和viewDidAppear之后才能进行,如果是在presentViewController:animated:completion:的completion中跳转,可以确保页面跳转是在viewDidAppear之后进行的。否则,就会有可能提示Warning: Attempt to present on whose view is not in the window hierarchy!


参考:

对Warning: Attempt to present on whose view is not in the window hierarchy!的解决方案


© 著作权归作者所有

共有 人打赏支持
yoyoso
粉丝 48
博文 123
码字总数 43673
作品 0
南京
高级程序员
presentViewController显示方式的窗口,没有导航栏的解决方法

ViewController *Controller = [[ViewController alloc] init]; UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:Controller]; [self presentVi......

卓行天下 ⋅ 2017/08/24 ⋅ 0

例如有两个分别为A,B的viewcontroller ,然后每隔5秒钟重复切换两个viewcontroller。

+ (NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)ti target:(id)aTarget selector:(SEL)aSel ... -(void)screenFun:(NSTimer *)timer { [NSTimer scheduledTimerWithTimeInter......

什科夫 ⋅ 2013/07/26 ⋅ 0

modal的样式及 半透明控制器效果

modal出半透明的控制器: UIViewController * maskVC = [[UIViewController alloc] init]; //设置页面的透明度 maskVC.view.backgroundColor = [UIColor colorWithFullRed:0 green:0 blue:0......

biyu6 ⋅ 2016/05/26 ⋅ 0

控制器中添加控制器的常见方法

控制器中添加控制器的常见方法: 1 添加子控制器:addChildViewController: 2 modal出控制器: presentViewController:<#(nonnull UIViewController *)#> animated:<#(BOOL)#> completion:<#......

奋斗的青春年华 ⋅ 2016/08/30 ⋅ 0

NSInvalidArgumentException :Application tried t...

违背了一个原则: Apple expects you to treat their UI elements in a certain way. 即一个东西必须明确它的作用 在使用storyboard的 prepareForSegue:(UIStoryboardSegue *)segue sender:......

孔俊 ⋅ 2013/08/17 ⋅ 0

iOS-简单拍照/取照片

在iOS中,系统提供了一个拍照视图控制器UIImagePickerController,UIImagePickerController继承于UIViewController,可以直接present出来。 在一个按钮事件里调出拍照界面来 - (IBAction)cl...

水一样的人儿 ⋅ 2015/12/22 ⋅ 0

reesun1130/SYZBarDemo

SYZBarDemo SYZBarDemo(IOS6及以上): 支持arm64,armv7,armv7s。可摄像头扫描,生成,从系统相册读取二维码。 用法: ###//打开摄像头并扫描 - (IBAction)saomiaoAction:(id)sender ###{ //扫...

reesun1130 ⋅ 2015/12/31 ⋅ 0

实现两个页面的转场动画

appdelegete.m #import "AppDelegate.h" #import "FirstViewController.h" @interface AppDelegate () @end @implementation AppDelegate - (BOOL)application:(UIApplication )application ......

鹿微微鹿 ⋅ 2016/04/13 ⋅ 0

keyboard extension调用presentViewController:animated:completion:出错

custom keyboard extension 项目里如何调用 presentViewController:animated:completion: 每每调用都会报错。

漆黑烈焰使 ⋅ 2017/03/22 ⋅ 0

UI_12 ModalViewController(模态),单例设计模式

⼀、模态viewController 1、介绍 程序中切换⻚⾯,可以使⽤UINavigationController。通过导航功能实现⻚⾯切换。使用 pushViewController:animated:该方法显示的视图具有层级关系;而使用模态...

黑伞将军 ⋅ 2015/08/30 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

apollo配置中心的学习笔记

公司现在配置文件太多了,导致配置文件修改起来还是非常麻烦的。在boss(业务运营支撑系统)中,配置文件是存放在jar包的,通过应用jar包来引用配置文件(区分不同环境)。这种方式虽然能够满足...

miaojiangmin ⋅ 4分钟前 ⋅ 0

Jena增删改查AP

插入、更新数据 public static void insert(){ String query = "PREFIX book: <http://www.book.com/jinyong/> \n" + " INSERT DATA \n" + ......

Vincent-Duan ⋅ 5分钟前 ⋅ 0

springMVC之与json数据交互方法

因为我也要返回json数据。所以需要这个注解@ResponseBody,把Java对象转换成json字符串 注意: 1、@RequestBody不能省,因为前台发过来的数据是json数据,得用这个注解去解析该怎么接收这些数...

颖伙虫 ⋅ 9分钟前 ⋅ 0

用实例域代替序号(31)

1、许多枚举天生就与一个单独的int 值相关联 ordinal 方法,返回枚举常量在类型中的数字位置 下述,枚举修改很不方便,不好维护 永远不要根据枚举的序数导出与他相关联的值 而是将他保存在一...

职业搬砖20年 ⋅ 11分钟前 ⋅ 0

并发编程---ConcurrentHashMap源码解析

ConcurrentHashMap是java中为了解决HashMap不能支持高并发而设计的新的实现。 ConcurrentHashMap的类结构 public class ConcurrentHashMap<K,V> extends AbstractMap<K,V> implements C......

千古一梦888 ⋅ 14分钟前 ⋅ 0

微服务 WildFly Swarm 简介

我们将看到的最后一个Java微服务框架是一个相对较新的场景,它利用了 JBoss WildFly 应用服务器中已试过且受信任的 JavaEE 功能。WildFly Swarm 是 WildFly 应用服务器的一个完整的拆下来的组...

woshixin ⋅ 19分钟前 ⋅ 0

android apk 瘦身

头条APK瘦身之路 随着版本迭代,功能增加安装包体积也会慢慢增大。 今日头条576版本APK达到了25M,通过一系列的优化,到目前的607版本为12M。本文主要是介绍头条APK瘦身中用到的一些方法。 ...

GoldenVein ⋅ 22分钟前 ⋅ 1

mac机器学习开发环境部署及helloworld

一、下载并安装Anaconda2.7 https://repo.anaconda.com/archive/Anaconda2-5.2.0-MacOSX-x86_64.pkg 路径:/Users/shijun/anaconda2 二、运行Anaconda Navigator -> Environments -> base(ro......

八戒八戒八戒 ⋅ 33分钟前 ⋅ 0

关于日常开发的经验总结(Java),持续更新中

常量尽量使用枚举来表示,这样表现力会很强,因为枚举比一个常量类要有更多的扩展性 方法的入参和出参尽量不要使用Map,因为Map会让调用者感到迷惑,他不知道你里面装的什么,面向对象的开发...

小99 ⋅ 34分钟前 ⋅ 0

IDEA创建SpringMVC+Mybatis+Maven项目

视频如下(加载有点慢请见谅,服务器不太好): 视频

影狼 ⋅ 34分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部