gpt4 book ai didi

objective-c - 无法识别的选择器发送到 segue 上的实例

转载 作者:行者123 更新时间:2023-12-02 23:54:22 24 4
gpt4 key购买 nike

我在此代码中执行了一个segue,并且已验证正确的标识符是“showContacts”

if ([segue.identifier isEqualToString:@"showContacts"]) {
SwipeTableViewController *destViewController = segue.destinationViewController;
destViewController.albumObj = album;
}

在此 block 的最后一行,我收到此错误消息:

2014-07-22 10:00:18.333 LayoutTest[710:60b] -[UITableViewController setAlbumObj:]: unrecognized selector sent to instance 0x965d810
2014-07-22 10:00:18.336 LayoutTest[710:60b] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UITableViewController setAlbumObj:]: unrecognized selector sent to instance 0x965d810'

这是我在头文件中声明 albumObj 的位置:

#import <UIKit/UIKit.h>
#import "SWTableViewCell.h"
#import "Album.h"

@interface SwipeTableViewController : UITableViewController <SWTableViewCellDelegate>
@property (nonatomic, strong) Album* albumObj;

@end

这就是它在我的 SwipeTableViewController.m 文件中合成的地方:

@implementation SwipeTableViewController

@synthesize albumObj;

- (id)initWithStyle:(UITableViewStyle)style
{
self = [super initWithStyle:style];
if (self) {
// Custom initialization
}
return self;
}

我已经以完全相同的方式对同一个对象进行了 Segues,并且效果很好。为什么我在这个 segue 中遇到这个问题?我想也许我应该在表应用程序委托(delegate)中声明 albumObj,如下所示:

@interface SwipeTableAppDelegate : UIResponder <UIApplicationDelegate>

@property (strong, nonatomic) UIWindow *window;
@property (nonatomic, strong) Album* albumObj;

@end

但看起来我无法像我需要的那样访问 SwipeTableViewController.m 中的 albumObj。

最佳答案

看起来segue.destinationViewController正在为您提供一个UITableViewController。这就是为什么它说 setAlbumObj 无法识别。 UITableViewController 上不存在该方法。确保您的目的地是 Storyboard 中的 SwipeTableViewController

关于objective-c - 无法识别的选择器发送到 segue 上的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24893784/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com