草庐IT

ios - Unwind segue 在非模态时不会关闭自适应弹出窗口呈现

iOS9测试版更新:Apple可能已针对iOS9修复此问题。如果您针对iOS8解决此问题,请确保它在iOS9上也能正常工作。在Storyboard中,我创建了一个popover演示segue以通过按钮呈现导航和ViewController,并创建了一个unwindsegue。在纵向模式下,模态(全屏)显示如预期的那样展开/关闭。在横向模式下,也会调用unwindsegue,但是弹出窗口不会自动关闭。我是否错过了一些连接?我必须自己关闭弹出窗口显示吗?-(void)prepareForSegue:(UIStoryboardSegue*)seguesender:(id)__unusedse

objective-c - 如何取消连接到 UIButton 的 segue

我正在研究这个tutorial,其中展示了如何使用Storyboard创建应用程序。我的viewController有两个UIButtons,我已经将一个segue连接到这些UIButtons。这些segues推送一个新的viewController。现在我正在寻找一种方法来在某个条件变为真时取消此segue。当我使用旧的xib文件创建我的界面时,我能够做这样的事情:-(IBAction)sendButton:(id)sender{if(TRUE){//STOP!!}}这不再起作用了。如何取消新viewController的推送? 最佳答案

ios - Unwind Segue 不使用 UIModalPresentationCustom 关闭 View Controller

我正在使用自定义转换呈现模态视图Controller(通过将其modelPresentationStyle设置为UIModalPresentationCustom,提供转换委托(delegate)和UIViewControllerAnimatedTransitioning对象)。在呈现的ViewController中,我有一个连接到按钮的展开转场。segue火得很好;呈现ViewController中的IBAction方法被调用,呈现ViewController中的prepareForSegue也被调用。但是,呈现的ViewController不会被取消,并且不会调用适当的转换委托(d

ios - 移动现有的 segue(s)

我想在现有的XCodeiOSStoryboard中将一个ViewController换成另一个,但我不想重新创建转到它的转场。是否可以移动或调整现有转场的目的地? 最佳答案 我相信您确实需要创建新的转场,但这就像在转场源和新场景之间控制拖动一样简单。如果您的代码正在做任何需要StoryboardID的事情(例如prepareForSegue或performSegue),那么只需为您的新segue应用相同的StoryboardID,而您不需要需要更改您的代码。如果您正在使用自定义segue,您可以只使用相同的segue类,因此您不需要

ios - 应用程序在 iOS 9 + Xcode 7 的 Segue 上崩溃整个设备

更新:我在这一年中使用了我的一个DTS。目前与Apple支持工程师合作。根据他的建议,我还为此创建了一个错误报告。随着时间的推移,我将更新此线程,希望能产生最终解决方案。不知何故,我想出了一种方法来创建一个真正重启模拟器和/或物理设备的应用程序。为我欢呼。当我升级到xcode7并开始针对iOS9进行测试时,这个问题就开始了。在任何低于iOS9的设备/模拟器上,这个问题都不会出现。当我将它附加到Xcode运行时,我看到的唯一日志消息是XPCconnectioninterruptedTerminatingsincethereisnosystemapp.我已将其缩小到正在调用的一段代码[se

objective-c - 使用 Storyboard segue 显示 ABPeoplePickerNavigationController

我有一个新项目,我想在触摸按钮时显示人员选择器。所以我有一个UIButton,它转至具有标识符showContacts的通用UIViewController。我将此ViewController的类设置为ABPeoplePickerNavigationController。现在在我的根ViewController中,我有这段代码来初始化我的选择器:#pragmamark-Segues-(void)prepareForSegue:(UIStoryboardSegue*)seguesender:(id)sender{if([segue.identifierisEqualToString:@"

iOS Unwind Segue 嵌入导航 Controller 时停止工作

我有一个UIViewController,它有一个按钮,可以将模式转换为UIViewController作为表单。在该表单上有一个取消按钮,带有一个返回到原始UIViewController的展开转场。这似乎工作得非常愉快,并关闭了表单。一旦我选择了原始的UIViewController并在XCode中选择了嵌入导航Controller的选项,展开转场似乎不再起作用,模式表单将不再取消。我确信有一个简单的解释,但它目前正在回避我,所以欢迎任何想法。谢谢。 最佳答案 我不知道为什么你会看到你看到的行为,我也看到了。它发生在页面表和表单

ios - 正确访问 segue 的目标 View Controller 以分配协议(protocol)委托(delegate)

在实现选择列表时,我在集成segue和协议(protocol)时遇到了一些问题。在我的选择列表.h中我有:#import@protocolSelectionListViewControllerDelegate@required-(void)rowChosen:(NSInteger)row;@end@interfaceSelectColor:UITableViewController-(IBAction)saveSelectedColor;@property(nonatomic,strong)iddelegate;@end在我的选择列表.m中,我有:@implementationSele

ios - 在 uitableview 编辑模式下丢弃 segue

当我将uitableview更改为编辑模式时,我希望用户能够在不发生segue的情况下选择一个单元格。segue在Storyboard中链接。有没有办法在编辑模式下禁用segue?我无法在编辑期间禁用与单元格的交互,因为我需要按下编辑控件(插入按钮)。 最佳答案 在你的ViewController中,覆盖:-(BOOL)shouldPerformSegueWithIdentifier:(NSString*)identifiersender:(id)sender{return!self.isEditing;}在该方法中检查这是否是正确

ios - 呈现 UINavigationController 模态时,segue.destinationViewController 为 nil

我有一个UICollectionView,当用户按下一个单元格时,我会使用Storyboard在UINavigationController中呈现另一个ViewController。-(void)collectionView:(UICollectionView*)collectionViewdidSelectItemAtIndexPath:(NSIndexPath*)indexPath{[selfperformSegueWithIdentifier:@"editBookIPad"sender:indexPath];}-(void)prepareForSegue:(UIStoryboar