2

我有下面的代码迭代我的 bookObjects 数组上的每一本书,我的问题是 addObject 是在随机索引上插入/添加我的 aBook 对象,而不是在 self.books 的末尾添加它

我只是希望它遵循 bookObjects 中书籍的顺序,没有特定的顺序或排序。

书籍是一个 NSMutableArray

NSArray *bookObjects = [element childrenNamed:@"books"];

int i = 0;
for(SMXMLElement *child in bookObjects)
{
    NSString *isbn = [child valueWithPath:@"isbn"]; 
    NVBook *aBook = [self getBookByISBN:isbn];
    if(nil == aBook)
    {
        aBook = [NVBook insertBookInContext:[self managedObjectContext]];
        aBook.isbn = isbn;

        [self.books addObject:aBook];
    }

    aBook.indexInList = i++;
    [aBook updateContentWithElement:child];
}

附加代码

+ (NVBook *)insertBookInContext:(NSManagedObjectContext*)context
{
    return [NSEntityDescription insertNewObjectForEntityForName:@"Book" inManagedObjectContext:context];
}


- (NVBook *)getBookByISBN:(NSString *)aISBN
{
    NVBook *aBook = nil;

    for(NVBook *book in self.books)
    {
        if([book.isbn isEqual:aISBN])
        {
            aBook = book;
            break;
        }
    }

    return aBook;
}
4

0 回答 0