Estou tentando definir o texto em um NSTextField, mas os métodos -setStringValue:
e -setTitleWithMnemonic:
não estão funcionando. Alguma ideia?
Estou tentando definir o texto em um NSTextField, mas os métodos -setStringValue:
e -setTitleWithMnemonic:
não estão funcionando. Alguma ideia?
Respostas:
setStringValue:
é a maneira de fazer isso. Você deve se certificar de que sua tomada está sendo ajustada corretamente. (No depurador, verifique se a variável do campo de texto não é nula.)
stringValue
, então você pode configurá-lo para qualquer string que desejar.
Apenas myLabel.stringValue = "MY TEXT"
funciona aqui, usando Swift e Xcode 6.
Swift 4
self.yourTextField.stringValue = "Your_Value"
Nota: Buscando o valor de self.yourTextField.stringValue, receberá uma mensagem de aviso, ou seja, para evitar esse tipo de aviso, você pode usar assim (maneira sugerida)
DispatchQueue.main.async {
your code ...
}
OU também consulte isso .
Se o valor que você está tentando definir for um número inteiro e não uma sequência, não será necessário converter o valor inteiro em uma sequência manualmente; você pode simplesmente ligar para:
myLabel.integerValue = i;
A integerValue
propriedade é definida na NSTextField
classe pai de NSControl
. Consulte a página de documentação vinculada para obter uma lista completa dos métodos suportados.
ObjectiveC:
[label setStringValue: @"I am a label"];
O código original que eu uso no meu código para exibir a versão do aplicativo é:
[lblVersion setStringValue:[NSString stringWithFormat:@"v%@", [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"]]];