J'ai un NSArrayController
dont le contenu est la propriété "servers
" de mon AppDelegate.Comment effectuer une action en réponse à un élément ajouté au contenu d'un NSArrayController?
j'ai une NSTextField
qui est lié à la propriété « selection.name
» du NSArrayController
et j'ai des boutons attachés aux actions « add:
» et « remove:
» sur le NSArrayController
. Ce que je voudrais voir se produire, c'est quand je clique sur le bouton "Ajouter", le NSTextField
devient le premier répondeur afin que les utilisateurs puissent immédiatement modifier le nom du serveur.
Ma stratégie actuelle est d'observer la propriété « arrangedObjects
» du NSArrayController
, mais tout ce que je reviens de la NSKeyValueChangeKindKey
est le NSKeyValueChangeSetting
ENUM. J'espérais obtenir la valeur NSKeyValueChangeInsertion
afin que je puisse demander au champ de texte de devenir le premier répondant.
Ma question est la suivante: est-ce que j'y vais de la bonne façon ou y a-t-il un moyen plus commun d'y parvenir? Je fais de bonnes fixations, je me bats avec la façon d'insérer mon propre comportement dans les failles.
Merci pour votre aide. Pour une raison quelconque, j'ai dû envoyer le makeFirstResponder: message avec performSelector: withObject: afterDelay: (après avoir appelé super) pour le faire prendre. –
Vous avez probablement besoin du délai puisque - [NSArrayController add:] retarde son travail en interne. –