Я пытаюсь установить текст в NSTextField, но -setStringValue:и -setTitleWithMnemonic:методы не работают. Любые идеи?
Я пытаюсь установить текст в NSTextField, но -setStringValue:и -setTitleWithMnemonic:методы не работают. Любые идеи?
Ответы:
setStringValue:это способ сделать это. Вы должны убедиться, что ваша розетка установлена правильно. (В отладчике убедитесь, что ваша переменная текстового поля не равна нулю.)
stringValue, тогда вы можете установить для него любую строку, какую захотите.
Просто myLabel.stringValue = "MY TEXT"работает здесь, используя Swift и Xcode 6.
Swift 4
self.yourTextField.stringValue = "Your_Value"
Примечание. При извлечении значения из self.yourTextField.stringValue будет получено предупреждающее сообщение, т. Е.
Во избежание такого рода предупреждений вы можете использовать вот так (рекомендуемый способ)
DispatchQueue.main.async {
your code ...
}
ИЛИ также обратитесь к этому .
Если значение, которое вы пытаетесь установить, оказывается целым числом, а не строкой, вам не нужно преобразовывать целое значение в строку вручную; Вы можете просто позвонить:
myLabel.integerValue = i;
integerValueСвойство определяется на NSTextField«S родительского класса, NSControl. См. На этой странице связанной документации полный список методов, которые она поддерживает.
ObjectiveC:
[label setStringValue: @"I am a label"];
Исходный код, который я использую в своем коде для отображения версии приложения:
[lblVersion setStringValue:[NSString stringWithFormat:@"v%@", [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"]]];