NSValueTransformer я могу добавить больше объектов в связанный массив?

Я использую преобразователь значений для преобразования массива содержимого таблицы в "связанное" содержимое, чтобы я мог редактировать значения, прежде чем они перейдут к представлениям, и это сработает.

- (id)transformedValue:(id)value
{
    NSArray *oldArr = value;
    NSMutableArray *newArr = [[NSMutableArray alloc] init];
    for(Metadata *meta in oldArr)
    {
        meta.title = @"hello";
        [newArr addObject:meta];
        [newArr addObject:meta];
    }
    return newArr;
}

редактирование значений работает, и отражается в пользовательском интерфейсе

meta.title = @"hello";

НО, когда я пытаюсь расширить массив, вместо привязки таблицы к массиву размера 2, я хочу расширить его до размера 4, просто дублируя их

for(Metadata *meta in arr)
{
    meta.title = @"hello";
    [newArr addObject:meta];
    [newArr addObject:meta];
}

Это не работает, и я получил количество ячеек старого массива, как я могу добиться того, что я хочу??

Спасибо

1 ответ

Я не совсем понимаю, почему вы делаете это, и это звучит немного как плохая идея, но я подклассировал NSArrayController, прежде чем добавлять дополнительные элементы. В вашем случае вы можете просто установить NSArrayController и вставить все, что вам нужно (дублированные элементы) и подключить tableView (это то, что вы используете?) К NSArrayController.

Другие вопросы по тегам