2010-03-08 5 views
3

La dernière version de UICatalog example application d'Apple comprend zéro code dans le TextFieldController pour gérer les événements d'affichage/masquage du clavier, et pourtant la vue de la table glisse encore et encore magnifiquement avec le clavier.Événements UICatalog et Keyboard

Est-ce que quelqu'un sait ce qu'est le nouveau tour? Y a-t-il des paramètres dans le XIB qui leur ont permis de renoncer à s'enregistrer pour les notifications ou d'utiliser les méthodes de délégué TextField? Le TextViewController utilise toujours des notifications par clavier pour gérer le glissement de la vue. Je ne comprends donc plus pourquoi cela n'est plus inclus pour TextFields.

Pensées?

Répondre

0

L'astuce est cachée en appelant becomeFirstResponder sur un UITextField qui est dans une vue déroulante. Apparemment, à chaque appel au [textField becomeFirstResponder], iOS fait automatiquement défiler la vue parente jusqu'à ce que le textField soit visible.

Ce comportement peut en fait être indésirable dans certains cas, car il ne défilera généralement pas au même emplacement que la méthode scrollRectToVisible:animated: si vous deviez essayer de faire les choses de cette façon.

Merci pour votre avis tout le monde!

+0

La fonction "devenirFraisant" n'est pas utilisée dans cette classe. semble être votre point de vue sur tableview. –

0

Vous pouvez fermer le clavier, si elle est ouverte en appelant:

[sender resignFirstResponder];

ne suis pas sûr d'ouvrir le clavier cependant.

+0

Jamie, vous avez raison. J'aurais dû être plus précis. Il n'y a pas de code pour faire glisser la vue de défilement associée à un clavier montrant ou se cachant ... il semble juste faire défiler parfaitement le champ de texte sélectionné. Merci quand même. – Devunwired