我是一名新开发人员,这个问题让我摸不着头脑。
无论出于何种原因,当我试图将它传递给我的DetailViewController时,我的punches mutable数组保持为nil。 punches是我的Punches类中NSMutableArray类型的属性。
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
DetailViewController* dvc = [segue destinationViewController];
NSIndexPath* indexPath = [shiftTableView indexPathForSelectedRow];
dvc.shiftPunches.punches = shifts[indexPath.row];
}
我在我的DetailViewController中将shiftPunches设置为一个具有强引用的属性。使用调试器我的shift可变数组显示它有2个对象(两个都是可变数组)。
我甚至尝试过:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
DetailViewController* dvc = [segue destinationViewController];
dvc.punches.punches = [NSMutableArray new];
[dvc.shiftPunches.punches addObject:@"foo"];
}
仍然没有。我确定我遗漏了一些基本的东西,有什么建议吗?
由于
答案 0 :(得分:-1)
如果pucnes
有效NSMutableArray不是nil,请尝试执行以下操作:
执行 - [NSMutableArray new];
时,您只需创建一个空数组。尝试执行以下操作:
1)在DetailViewController中创建NSMutableArray。将其命名为detailArray
(或您喜欢的名称)。
2)然后做:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
DetailViewController *dvc = [[DetailViewController alloc]init];
dvc.detailArray = self.punches;
}