Swift中解决Unwind的解决方法没有解雇

时间:2014-07-24 16:59:09

标签: ios objective-c uiviewcontroller swift

我对解开segue的解决方法感到有些困惑:Xcode 6 Storyboard Unwind Segue with Swift Not Connecting to Exit

segue尚未解雇我相信我正在按照解决方法中的概述实施它:

1)View Controller标题:

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>

@class DetailViewController;

@interface DetailViewController : UIViewController
- (IBAction) unwindToMaster:(UIStoryboardSegue *) segue;
@end

2)Swift中的Controller:

@objc(DetailViewController)class DetailViewController: UIViewController, UISplitViewControllerDelegate {

    @IBOutlet var detailDescriptionLabel: UILabel
    var masterPopoverController: UIPopoverController? = nil

    @IBOutlet var itemButton: UIBarButtonItem

    @IBAction func unwindToMaster(segue:UIStoryboardSegue) {
        NSLog("unwind baby")
    }
[...]
}

3)故事板中的链接(作为XML):

 <barButtonItem key="rightBarButtonItem" title="Item" id="5Nk-ZI-b7r">
                            <connections>
                                <segue destination="aIR-Or-dY2" kind="unwind" unwindAction="unwindToMaster:" id="aWo-Uk-qUQ"/>
                            </connections>
                        </barButtonItem>

4)我如何重置自定义类:

我转到自定义类侧页面,删除“类”文本字段中的任何内容。它默认为UIViewController。我保存,然后单击下拉列表并选择DetailViewController。

segue没有开火,即显然没有正确地链接到“项目”按钮,但我很难理解原因是什么。

我确实实施了上面链接和此链接中列出的解决方案:Workaround for swift unwinding

当然,我可能做错了,并希望得到一些指导。

1 个答案:

答案 0 :(得分:1)

Xcode 6 Beta 4修复了unwind segues无法在Swift类中找到函数的问题,因此不再需要实现此解决方法。