[UIViewController setRecipeName:]:无法识别的选择器发送到实例

问题描述 投票:0回答:1

我来自 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
。出了什么问题?

ios objective-c uiviewcontroller
1个回答
23
投票

错误信息

-[UIViewController setRecipeName:]:无法识别的选择器发送到实例...

表示

MyAccountController *destViewController = segue.destinationViewController;

没有按预期返回

MyAccountController
,而是返回
UIViewController

一个可能的原因是您没有在故事板文件中将视图控制器的“自定义类”设置为“MyAccountController”。

© www.soinside.com 2019 - 2024. All rights reserved.