J'ai un UITextView
avec du texte, et je veux être capable de le faire défiler de telle sorte qu'un NSRange
donné du texte est en haut de la vue. L'utilisation de scrollRangeToVisible:
ne fonctionne pas: elle fait défiler la plage de sorte qu'elle se trouve quelque part dans la vue, pas nécessairement là où je veux qu'elle soit. Comment puis-je faire défiler de sorte que ce NSRange
de texte dans le UITextView
est exactement au sommet?Défilement de la plage dans UITextView
Merci pour vos suggestions.
Merci beaucoup pour votre réponse. Je vais aller de l'avant et essayer cela. Il est vraiment stupide qu'Apple n'ait pas rendu UITextView plus fonctionnel pour des situations de grande envergure. –
Si vous le comparez à NSTextView, vous pouvez voir qu'Apple a radicalement simplifié le moteur de mise en page. Quand ils font ce genre de changement, ils gardent souvent une grande partie de la fonctionnalité privée pour quelques versions pendant qu'ils travaillent sur les détails. Une fois qu'ils rendent une interface publique, ils doivent la supporter au moins par un cycle de dépréciation, et s'ils ne sont pas vraiment satisfaits de l'interface, alors ils veulent pouvoir la changer sans avoir à gérer cela. Cela nous donne moins au début, mais cela signifie que Cocoa a tendance à moins tourner que, par exemple, .NET, où les interfaces changent radicalement. –
Rob, je ne comprends pas vraiment ta réponse. Jonathan, est-ce que ça t'a aidé? Je comprends comment utiliser les UIKitAdditions pour calculer le cadre occupé par le texte intégral, mais comment obtenir l'emplacement des coordonnées d'une gamme donnée de texte dans ce cadre? Quelle est l'étape manquante ici? –