故事板截图
在Xcode 4.6 Storyboard中我有2个ViewControlers,一个用于保存按钮,另一个用于labelView,在主页按钮的水龙头上传递一个字符串“Home Tapped”
继承ViewController.m代码
#import "ViewController.h"
#import "ViewController2.h"
@interface ViewController ()
@end
@implementation ViewController
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if([segue.identifier isEqualToString:@"Home"])
{
NSString *message = @"Tapped on home";
ViewController2 *vc = [segue destinationViewController];
vc.labelString = message;
}
}
ViewController2.h
#import <UIKit/UIKit.h>
@interface ViewController2 : UITableViewController
@property(nonatomic,strong) UILabel *mylabel;
@property(nonatomic,strong) NSString *labelString;
@end
错误
Terminating app due to uncaught exception 'NSGenericException', reason: 'Could not find a navigation controller for segue 'Home'. Push segues can only be used when the source controller is managed by an instance of UINavigationController.'
*** First throw call stack:
(0x1c91012 0x10cee7e 0x468f31 0x45ab99 0x45ac14 0x10e2705 0x162c0 0x16258 0xd7021 0xd757f 0xd66e8 0x45cef 0x45f02 0x23d4a 0x15698 0x1becdf9 0x1becad0 0x1c06bf5 0x1c06962 0x1c37bb6 0x1c36f44 0x1c36e1b 0x1beb7e3 0x1beb668 0x12ffc 0x28dd 0x2805)
libc++abi.dylib: terminate called throwing an exception
(lldb)
答案 0 :(得分:4)
您需要将NavigationController
作为故事板的入口点。现在它是View Controller
,由指向它的箭头表示没有来源。