Пример основных данных KVC - PullRequest
0 голосов
/ 04 июля 2011

Извините, что навязал, но я был бы очень признателен, если бы кто-нибудь взглянул на это и показал мне, как это сделать:

Базовые данные работают, как и ожидалось, с ассоциациями данных между входом в список источников (s) и верхнее правое textField.

То же самое делает textField2 (нижний правый) , если вы вручную вводите строку .

Я хочу добавить строку в нижнемtextField, в данном случае универсальный "Hello!"(реализовано в методе setText), и он также поддерживает связь с записью списка источников.

Подводя итог: textField2 - введите вручную строку, она работает как положено.Добавьте закодированную строку, и она не будет поддерживать связь с записью списка источников.

Вот пример примера проекта .

Еще раз спасибо за помощь.

1 Ответ

0 голосов
/ 04 июля 2011

Вот как я обновил setText: метод в MyDocument классе:

-(IBAction)setText:(id)sender
{       
    NSString *newValue = [[output stringValue] stringByAppendingString:@"Hello!"];
    [[setText selection] setValue:newValue forKey:@"textField2"];
}

Я думаю, что ваши предположения о направлении установки значений были неверными. Объект не принимает значение из текстового поля. Это текстовое поле, которое получает значение от объекта. Поэтому я создаю newValue, беря текущее значение output текстового поля и добавляя что-то к нему. Затем я беру объект [setText selection] (выбранный в данный момент) и устанавливаю для его свойства textField2 новое значение. Этот метод setValue:forKey автоматически обновляет поле теста output новым значением свойства textField2.

...