0

看来我在 segue 期间创建的视图控制器无法修改或创建任何类型为 NSArray 的成员变量。我可以在我喜欢的任何函数中创建局部变量,但是分配一个成员变量不起作用,也不能在 init 中分配数组。

到底他妈发生了什么?

如果不使用 iOS5.1 和 Xcode 4.3 我敢肯定,这会起作用。

- (id)initWithViewControllers:(NSArray *)newViewControllers
{
    if (self = [super init]) {
        _viewControllers = [newViewControllers retain];
    }

    return self;
}

成员变量都设置正确。它根本没有为 _viewControllers 分配任何东西。它始终为零。

我不能包含整个代码,但本质上是这样的:

根导航控制器用于加载表格视图控制器以从两行中选择。然后每一行推动另一个视图控制器加载我们做一些工作的地方。当我点击该行并分配另一个视图控制器时发生故障。在分配期间,类型为 NSMutableArray 或 NSArray 的成员变量不会被创建,它们总是返回 0x0。我也无法通过创建自己的 initWithArray:(NSArray *) 来设置变量。

如果它遗漏了什么问题是有效的并且可以修改,请不要投反对票。只需发表评论,我会回答。我从来没有见过 Obj-C 这样的行为是我发布这个的原因。

4

2 回答 2

0

看起来你想要 NSMutableArray?

于 2012-03-29T19:58:56.827 回答
0

我发现了这个问题。UX 团队提供的 png 解决了没有高度或无限高的问题。它们显示为没有 Alpha 通道的 png。我不知道这是如何产生的副作用,但我解决了使用我自己的 png 文件无法分配数组的问题,它解决了这个问题。

同样,我不知道这如何导致它在应用程序中产生涟漪。

于 2012-03-30T07:52:58.303 回答