Existe-t-il un moyen d'implémenter la personnalisation automatique pour un UITextView, par exemple en lui donnant un NSDictionary
ou NSArray
de Strings à surveiller?UITextView Custom Auto-complétion
Répondre
Vous devrez le programmer vous-même. Si vous implémentez le protocole UITextViewDelegate, la fonction
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)
est appelé à chaque fois que l'utilisateur entre/supprime un caractère dans la vue texte. Ainsi, par exemple, si l'utilisateur entre un 'char', alors dans cette fonction, vous allez vérifier le tableau w les mots que vous voulez compléter automatiquement pour voir si cela devrait être complétié automatiquement.
CONDITIONS -
• S'il n'y a qu'une seule valeur qui commence par 's', autocomplete.
• Si aucune valeur ne commence par 's' ou si plusieurs valeurs commencent par 's', (ELSE) ne se termine pas automatiquement.
Je recommande que votre tableau de chaînes de saisie semi-automatique soit trié par ordre alphabétique, et que vous gardiez une variable globale qui pointe à l'endroit où vous vous étiez arrêté dans le tableau. Par exemple si l'utilisateur entre 's', et le premier mot avec 's' est dans l'index de tableau 5, alors quand l'utilisateur entre un autre caractère, 'u' fait la chaîne de recherche "su", vous devriez pouvoir vous souvenir de commencez dans l'index de tableau 5 pour trouver la chaîne de saisie semi-automatique plus rapidement (et ne pas itérer par des données inutiles). J'utiliserais un tableau C pour cela, bien qu'un NSArray fonctionnerait.
- 1. MySql - autocomplétion
- 2. Eclipse PDT (hélios) autocomplétion
- 3. SharePoint 2010 jQuery autocomplétion
- 4. Suggestion d'étiquette (autocomplétion de variable)
- 5. StringConverter avec StandardValuesSupported et autocomplétion
- 6. custom class = custom + alloc, custom + init
- 7. custom AuthorizeAttribute + custom SiteMapProvider related?
- 8. jQuery autocomplétion d'ui - .ui-autocomplete-loading
- 9. grails-ui plugin autocomplétion composant erreur
- 10. jQuery autocomplétion caractères spéciaux (norvégien) problèmes
- 11. Visual Studio Standard C++ 2008 autocomplétion
- 12. UITextView inputView
- 13. UITextView position
- 14. transparent UITextView
- 15. Custom ObservableCollection
- 16. Custom EntityNotFoundDelegate
- 17. Custom CListCtrl
- 18. Custom RowGroupHeader?
- 19. Custom AuthorizeAttribute
- 20. Custom Scroller
- 21. UITextView pâte méthode override
- 22. UITextView fuite de mémoire
- 23. Iphone - UITextView mémoire fuite
- 24. UITextView défilement automatique
- 25. UITextView setText, obtenir null
- 26. question relative à UITextView
- 27. UITextview avec zoom?
- 28. UITextView n'a aucun événement
- 29. Dessin dans un UITextView
- 30. Question liée à UITextView
2 questions, Est-ce que cette méthode fonctionne avec un UITextView (comme mentionné dans ma question) et comment pourrais-je réellement faire l'autompletion. Merci! – Joshua
J'ai mis à jour ma réponse. aussi loin que l'autocomplétion va, c'est plus difficile avec uitextview. vous devrez trouver les derniers caractères entrés dans la vue de texte, et voir si elles peuvent être complétées automatiquement en les vérifiant à chaque élément dans votre tableau de chaînes avec les conditions que j'ai décrites ci-dessus. Comme je l'ai mentionné, vous pouvez optimiser votre code pour qu'il s'exécute plus rapidement si vous ne le faites pas parcourir la liste à chaque fois. Si vous trouvez que vous pouvez effectuer une saisie semi-automatique, remplacez simplement la sous-chaîne entrée par la chaîne autocompleted. – jmont
Oui, je vois. Souhaitez-vous suggérer de vérifier les conditions en utilisant la méthode 'characterAtIndex:' de 'NSString' lors de l'itération dans le tableau? – Joshua