我来自 Java,我是 Objective-C 和 Xcode 的新手。下面是构建良好但抛出
unrecognized selector sent to instance
的代码。我尝试通过谷歌搜索来修复它,但没有成功。
if ([segue.identifier isEqualToString:@"myAccSegue"]) {
MyAccountController *destViewController = segue.destinationViewController;
NSString *s = @"avcd";//[_carImages objectAtIndex: (NSUInteger)index.section ];
destViewController.recipeName=s;
}
MyAccountController 是:
#import <UIKit/UIKit.h>
@interface MyAccountController : UITableViewController
@property NSInteger index;
@property (nonatomic,strong) NSString *recipeName;
@end
在 MyAccountController.m 中我写了
@synthesise recipeName
。当我运行时出现错误
2013-06-29 23:02:28.962 abcd[9171:c07] -[UIViewController setRecipeName:]: unrecognized selector sent to instance 0x7560cc0
稍微调试一下即可发现 ox7560cc0 属于
destinationViewController
。出了什么问题?
错误信息
-[UIViewController setRecipeName:]:无法识别的选择器发送到实例...
表示
MyAccountController *destViewController = segue.destinationViewController;
没有按预期返回
MyAccountController
,而是返回 UIViewController
。
一个可能的原因是您没有在故事板文件中将视图控制器的“自定义类”设置为“MyAccountController”。