我正在尝试将NSArray传递给NSMutableArray,但这样做有一些问题,希望有人可以提供帮助。

- (void)CachedData:(NSArray *)gArray indexPath:(NSIndexPath *)gIndex dataSetToParse:(NSString *)string
{
    //Set dataSetToParse so the parsing delegates if statment works correctly
    dataSetToParse = string;

    //Calls method that sets the accessory tick
    [self setAccessoryIndexPath:gIndex];

    //Set array that can be used in this view
    [parsedDataArray addObjectsFromArray:gArray];


    //Use this method to pass NSData object to startTheParsingProcess method and also to initalize indexPathVariable
    [self startSortingTheArray:gArray];
}

当我在向其添加对象之后尝试记录parsedDataArray时,我得到的只是

(空值)
(空值)
....等

任何帮助,将不胜感激。

更新资料
这里的主要问题是我有4个数组。具有3个视图,分别是主视图子视图和子视图。
每个数组都有一个指向下一个数组的引用ID,我想在显示每个数组之前先解析每个数组,以检查其中是否存在基于限制字符串的任何值。如果没有值,那么我要么将用户发送回主视图,要么就是不允许他们选择具有不相关值的数组的单元格。 (希望您能得到我在这里所做的事情)

为此,我想出的解决方案是在要显示它们的位置的父视图中解析值。

如果你看我的看法
view 1
- view 2
-- view 3

我需要一个用于视图1和2的解析委托,因为我需要在视图2中检查视图3的值。但是,这引起了我一个问题,因为我使用同一数组来实现冗余以将值返回给主设备。查看并创建/检查子视图的值。

因此,如果我不打算在视图3中显示任何内容,那么我将尝试跳过视图2的解析器委托,通过将已经解析的数组传递到mutablearray中,我将在didselectcell方法内部将数据传递回去...

无论如何,我希望这是有道理的。.这是我认为可以做到的唯一方法..如果您更好地了解,请告诉我您的策略。

最佳答案

假设parsedDataArray是在其他地方声明的可变数组,则没有意义:

//Set array that can be used in this view
[parsedDataArray addObjectsFromArray:parsedDataArray];

除非您打算将parsedDataArray中的所有对象加倍。我认为您的意思是:
//Set array that can be used in this view
[parsedDataArray addObjectsFromArray:gArray];

但是我不能确定没有更多的上下文或解释。

关于iphone - NSArray到NSMutableArray,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8978945/

10-12 07:29