gpt4 book ai didi

iOS:无法通过 segue 传递 NSArray

转载 作者:行者123 更新时间:2023-12-01 19:09:14 24 4
gpt4 key购买 nike

我有 2 个 View Controller 。我想转让 NSArray通过segue到另一个。

我已经查看了关于 SO 的所有其他问题,但我的代码仍然无法正常工作。
我想转移 matchObject。

View Controller .m

#import "mapViewController.h"

//call map view
-(void) callMap {
[self performSegueWithIdentifier: @"callMap" sender: self];
}

//pass data
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString:@"callMap"]) {
UINavigationController *nc = segue.destinationViewController;
UIViewController *tvc = [nc.viewControllers objectAtIndex:0];
tvc.matchObject = self.matchObject;
}
}

我在最后一条语句中收到错误,说找不到属性 matchObject。

我已经在“mapViewController.h”中定义了该属性
@property (nonatomic, strong) NSArray *matchObject;

并在'mapViewController.m'中合成它
@synthesize matchObject = _matchObject;

我已正确连接 Storyboard 中的 segue。

最佳答案

我认为问题出在 UINavigationController ...

您可以像这样在 mapViewController 类中为 matchObject 创建一个 setter 。

- (void)setMatchObject:(NSArray *)matchObject
{
_matchObject = matchObject
}

而这个更新的 prepareForSegue 方法......
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString:@"callMap"]) {
[segue.destinationViewController performSelector:@selector(setMatchObject:) withObject:self.matchObject];

}
}

希望这对你有用。

关于iOS:无法通过 segue 传递 NSArray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17738126/

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