仅通过分割视图控制器的一半呈现模态视图控制器
我正在修改现有的iPhone应用程序以在iPad上运行。 在iPhone版本中,当用户点击一个工具栏button时,我会提供一个带有modalTransitionStyle
的UIModalTransitionStyleFlipHorizontal
的模态视图控制器,这使得一个非常好的“卡片翻转”animation。
iPad界面基于分割视图(实际上是MGSplitViewController
)。 工具栏button在细节窗格中,所以当我呈现模式视图控制器时,它占据了整个屏幕,翻转过渡是没有意义的。
为了获得正确的用户交互,我希望模态控制器出现,并且仅在详细视图控制器上进行转换,使主视图控制器保持原样。
有没有办法做到这一点?
UIViewController *viewController = [[UIViewController alloc] init]; viewController.modalPresentationStyle = UIModalPresentationCurrentContext; [self presentViewController:viewController animated:YES completion:nil];
也许你可以添加它的视图作为DetailViewcontroller的子视图,并使用UIviewanimation来使它看起来像模态。 参考[UIView transitionFromView:toView:duration:options:completion]
编辑当观看WWDC2010video(Session 123:Building Animation Driven Interfaces)时,我意外地发现我可以用不同的方式做相同的转换。 我采样编码,它的工作:)
它是使用另一个非常相似的API [UIView transitionWithView:duration:options:animations:completion:]
我的示例代码如下
// Within your DetailViewController [self.view addSubview:self.flipSideView]; [UIView transitionWithView:self.view duration:0.8 options:UIViewAnimationOptionTransitionFlipFromLeft animations:^{} completion:nil];
是的,就是这样。 只需添加翻转侧视图作为子视图,并使用transitionWithView:...
animation而不是transitionFromView...
- 我应该使用什么,而不是在iOS5.1中弃用的UISegmentedControlStyleBezeled?
- ALAssetLibrary通知和enumerateAssetsUsingBlock
- parsingXML文件中的链接并将其推送到UIWebView
- 方法firstObject vs objectAtIndex的用法有什么区别:0?
- 在没有MPMediaPickerController的情况下访问用户的iTunes库
- 我的SearchDisplayController不能很好地处理UIViewController中的UITableView
- 在iOS上播放.m3u8文件
- 在UIButton标题右侧的图像与imageEdgeInsets和titleEdgeInsetsalignment
- 单身人士:优点,缺点,设计问题