Tag: modalviewcontroller

在模态视图水平翻转过渡期间的背景

我正在使用iOS 5基于故事板的项目。 当呈现模态视图控制器时,我select了使用水平翻转过渡。 在过渡期间,背景是黑色的,考虑到我的应用程序的devise,这不是特别美观的。 如何在转换过程中更改背景颜色? 在非故事板项目中,我能够改变MainWindow.xib的背景颜色,但由于这个文件不再出现在故事​​板项目中,所以不能这样做。 此外,作为故事板的入口点是一个UINavigationController似乎没有任何背景颜色的属性(我怀疑这将有所作为,因为我需要改变的背景颜色与窗口关联,而不是主视图控制器,因为该视图控制器基本上被翻转以显示模态视图控制器)。 任何帮助将不胜感激。

应用程序尝试模式地呈现一个主动控制器ios

我试图设置一个父视图控制器ViewController之前,它显示它可以提供callback,我做了这个使用PrepareForSegue – (void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { if ([segue.identifier isEqualToString:@"newQuarter"]) { [segue.destinationViewController setParentViewController:self]; } } 它坠毁给我的错误消息: Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Application tried to present modally an active controller. 所以我尝试使用另一种方法,并在button上设置了一个新的视图控制器, – (IBAction) buttonClicked { NewViewController *newController = [[NewViewController alloc] init]; [newController setParentViewController:self]; [self presentViewController:newController animated:YES completion:nil]; } 但没有运气,它仍然给我同样的错误信息,任何人都可以请指教? 谢谢!

检查隐藏的模式视图控制器的iOS状态栏

所以我在Xcode中使用了“Utility Application”模板,并拥有主视图控制器 ,用户可以使用button隐藏和显示状态栏。 我也有Flipside View Controller ,使用一个模式的segue,它有一个完成button返回到主VC 。 我已经设置好了,所以每当查看Flipside VC时 ,状态栏总是不被隐藏。 这意味着,如果用户隐藏了主VC上的状态栏并转换到Flipside VC ,它将animation并且如果用户没有隐藏状态栏并且它们转换,则状态栏没有任何反应。 这一切都很好,问题是从Flipside VC转移到Main VC 。 我需要一个条件来检查主VC中状态栏的隐藏状态,当按下完成button时,将在Flipside VC中调用它。 我已经研究过使用BOOL以及NSNotificationCenter向Flipside VC发送关于状态栏状态的消息。 我有这样的代码: -(BOOL)checkStatusBarHidden:(id)input { BOOL result; if ([UIApplication sharedApplication].statusBarHidden = YES) { result = YES; } else { result = NO; } return result; } 但是,这只是猜测和思考,我可能能够用它来通知Flipside VC的状态栏状态。 我想也许改变了 [UIApplication sharedApplication].statusBarHidden = YES) 类似的东西 self.statusBarHidden […]

isBeingDismissed未设置viewWillDisappear:

我有一些代码来清理我的viewWillDisappear:我只想在视图移回父视图控制器时使用。 – (void)viewWillDisappear:(BOOL)animated { if ([self isMovingFromParentViewController] || [self isBeingDismissed]) { NSLog(@"isMovingFromParentViewController or isBeingDismissed"); // clean up } [super viewWillDisappear:animated]; } 该视图可以通过两种方式呈现:可以由导航控制器推送,也可以作为模式视图控制器(来自同一导航控制器)呈现。 如果它被推,然后popup(按后退button),我的清理代码运行。 如果它作为一个模态视图控制器呈现,然后解散,代码不会运行。 我这样解雇: [rootViewController dismissModalViewControllerAnimated:YES]; 我的问题是:当我解雇我的视图控制器时,为什么不是isBeingDismissed设置?

使用UIPresentationFormSheet,为什么我的视图不能在键盘上方移动?

苹果说: UIModalPresentationFormSheet呈现的视图的宽度和高度小于屏幕的宽度和高度,并且视图在屏幕上居中。 如果设备处于横向并且键盘可见,则视图的位置将向上调整,以便视图保持可见。 所有未被覆盖的区域都会变暗,以防止用户与其进行交互。 但是,当键盘可见时,我的视图不会向上移动。 我基本上想要在键盘上方呈现一个文本视图,以便用户可以input文本,然后点击发送(在呈现的视图上的导航栏button)。 我的呈现视图是一个UISplitViewController (不是它的子项之一),而我正在介绍UINavigationController谁是顶级视图控制器基本上是一个UITextView 。 旋转工作,但是呈现的视图在两个方向上都被键盘重叠。 在这种情况下,我发现了一些 问题, 询问如何调整显示视图的大小,这很好,但我不想通过在演示者或呈现视图中手动resize来进行假设。 它似乎应该只是select一个体面的(无证)的大小,只是在键盘显示时自动移动它。 我的展示代码如下所示: MyViewController *vc = [[MyViewController alloc] init]; UINavigationController *nav = [[[UINavigationController alloc] initWithRootViewController:vc] autorelease]; nav.modalPresentationStyle = UIModalPresentationFormSheet; [self.splitViewController presentModalViewController:nav animated:YES];

iTunes风格的模式视图控制器链(表单)

有没有一种方法来实现iTunes风格的模式视图控制器链(见截图)? 我环顾四周,却找不到任何关于此的真正问题。 我不是在寻找替代品或解决方法,只是想知道是否可以使用当前的SDK(或iOS 5.0,尽pipe我们不应该谈论它是一个简单的是/否就足够了)。 对那些不能从形象中解脱出来的人来说, 在iPad上的iTunes有这个伟大的function,你可以在一个formsheet样式的modalviewcontroller查看电影,如果你点击在同一个modalviewcontroller另一个电影,它会创build一个新的modalviewcontroller与你点击的电影信息,并将滑动“旧“一个(在左边)。 当中央modalviewcontroller被解散时,它将滑回。 更新 :我确信它已经完成,但我写了我自己的实现。 结果并不是很困难,虽然它错过了一些上下文animation(如从位置翻转),但是它非常有用。 自从我写了iOS 5之后,我将在今年秋天公布NDA时公开这些代码。

在(BOOL)webView中:如何打开在UIWebView中点击的URL,打开一个Modal UIWebView

感谢您查看我的问题。 让我先描述一下这个应用程序。 我有一个基于标签栏的iOS5.1应用程序使用情节提要和ARC。 每个视图控制器都有四个选项卡,用于显示带有本地HTML文件的web视图(每个视图都是一组不同的html文件)。 目前,当用户触摸http或https链接时,它将在Safari中打开。 不过,我现在希望它通过模态视图在应用程序中打开。 我目前已经创build了界面并准备显示,但是我无法将URL传递给模型的“webview2”。 我已经找了很多例子,使用RSURL和string等,但不能得到任何工作。 一些示例代码似乎不适合我的情况。 在我的FirstViewController.m文件(这是相同的其他意见),我有… – (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType { //Gets the link. if (navigationType == UIWebViewNavigationTypeLinkClicked) { NSURL *URL = [request URL]; NSLog(@"url:%@",request); //Get's the url itself //If it's an external link… if ([[URL scheme] isEqualToString:@"http"] || [[URL scheme] isEqualToString: @"https" ]) { [[UIApplication sharedApplication] openURL:[request URL]]; NSLog(@"Opened in […]

在模态页面上显示模态表单

在iPad上,我使用modalPresentationStyle UIModalPresentationPageSheet显示一个模态视图控制器。 该视图控制器使用modalPresentationStyle UIModalPresentationFormSheet显示另一个模式视图控制器。 因此,用户看到背景视图控制器,页面页面和表格页面都是相互重叠的,因为表格页面小于页面页面。 页面的表示让背景变暗,以至于无法与之交互。 但是,表单不会使iOS 5的页面变暗,以便用户仍然可以与下面的页面页面交互。 但是我希望页面也变暗,以便用户在可以再次与页面交互之前closures模式表单。 在iOS 4上,这是默认行为,但在iOS 5上,我找不到实现此目的的方法。 你有什么build议吗?

iOS在模态视图控制器旋转时旋转视图控制器

我有一个UIViewController A在UIButton操作上打开另一个模式UIViewController B. 我的问题是:当前的模式UIViewController B打开,并且旋转 – 以前的UIViewController A根本不旋转。 这意味着,当我解雇UIViewController B – UIViewController A仍然是旧的状态(仍旧旧的界面方向)。 目前我正在强制A通过在B旋转时调用A中的方法来旋转。 有没有其他常见的方式来通知其他视图控制器的旋转? 或者什么是正确的方法?

iOS:将视图旋转应用于模态视图下的视图控制器

我一直在这个问题上的解决scheme,以显示一个透明背景的观点。 我遇到的问题是一旦模态视图控制器已被显示,底层视图不会被旋转了。 例如,如果A是我的视图控制器,那么B是我的模态视图。 问题如下。 我目前有我的设备在肖像和A显示。 然后我模式地呈现B 然后我旋转我的设备和B旋转,但A保持原样。 请有人build议如何处理这个旋转,以便底层视图( A )也旋转?