La plate-forme Android propose un correcteur orthographique implémenter et accéder au correcteur orthographique dans votre application. Le cadre est l'un des API Text Service.
Pour utiliser le framework dans votre application, vous devez créer un service Android qui génère un objet session de correcteur orthographique. D'après le texte que vous fournissez, l'objet de session renvoie des suggestions d'orthographe générées par vérificateur.
Cycle de vie du vérificateur orthographique
Le schéma suivant illustre le cycle de vie du service du vérificateur orthographique:
Pour lancer le correcteur orthographique, votre application commence à implémenter le correcteur orthographique du service de vérification. Clients dans votre application, tels que des activités ou une interface utilisateur individuelle des éléments, demandez une session de correcteur orthographique au service, puis utilisez la session pour obtenir des suggestions de texte. Lorsqu'un client met fin à son opération, il ferme sa session de vérificateur orthographique. Si nécessaire, votre application peut fermer le sort de vérification à tout moment.
Implémenter un service de correction orthographique
Pour utiliser le framework du correcteur orthographique dans votre application, ajoutez un service de correction orthographique qui inclut la définition de l'objet de session. Vous pouvez également ajouter activité facultative de votre application qui contrôle les paramètres. Ajouter un fichier de métadonnées XML décrivant le service de correction orthographique, et ajoutez les éléments appropriés votre fichier manifeste.
Classes du correcteur orthographique
Définissez l'objet de service et de session avec les classes suivantes:
-
- Une sous-classe de
SpellCheckerService
SpellCheckerService
implémente à la fois lesService
et l'interface du framework du correcteur orthographique. Dans votre sous-classe, implémentez la méthode suivante: <ph type="x-smartling-placeholder">- </ph>
createSession()
- Méthode de fabrique qui renvoie un
SpellCheckerService.Session
à un client qui veut vérifier l'orthographe.
- Une sous-classe de
-
- Une implémentation de
SpellCheckerService.Session
- Objet fourni par le correcteur orthographique aux clients pour leur permettre transmettre du texte au vérificateur orthographique et recevoir des suggestions. Dans ce , implémentez les méthodes suivantes: <ph type="x-smartling-placeholder">
- </ph>
onCreate()
- Appelée par le système en réponse à
createSession()
Cette méthode permet d'initialiser l'objetSpellCheckerService.Session
en fonction les paramètres régionaux actuels et d'autres détails. onGetSentenceSuggestionsMultiple()
- Effectue le correcteur orthographique. Cette méthode renvoie un tableau de
SentenceSuggestionsInfo
contenant des suggestions pour les phrases qui lui sont transmises.
Vous pouvez également mettre en œuvre
onCancel()
, qui gère les demandes d'annulation du correcteur orthographique ;onGetSuggestions()
, qui gère une requête de suggestion de mot ; ouonGetSuggestionsMultiple()
, qui gère des lots de requêtes de suggestion de mots. - Une implémentation de
Fichier manifeste et métadonnées du vérificateur orthographique
En plus du code, fournissez le fichier manifeste approprié et un fichier de métadonnées pour le vérificateur orthographique.
Le fichier manifeste définit l'application, le service et l'activité pour du contrôle des paramètres, comme illustré dans l'exemple suivant:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.android.samplespellcheckerservice" > <application android:label="@string/app_name" > <service android:label="@string/app_name" android:name=".SampleSpellCheckerService" android:permission="android.permission.BIND_TEXT_SERVICE" > <intent-filter > <action android:name="android.service.textservice.SpellCheckerService" /> </intent-filter> <meta-data android:name="android.view.textservice.scs" android:resource="@xml/spellchecker" /> </service> <activity android:label="@string/sample_settings" android:name="SpellCheckerSettingsActivity" > <intent-filter > <action android:name="android.intent.action.MAIN" /> </intent-filter> </activity> </application> </manifest>
Les composants qui souhaitent utiliser le service doivent demander l'autorisation
BIND_TEXT_SERVICE
pour s'assurer que seul le système s'associe au service. Définition du service
spécifie également le fichier de métadonnées spellchecker.xml
, qui est
décrites dans la section suivante.
Le fichier de métadonnées spellchecker.xml
contient les éléments suivants :
XML:
<spell-checker xmlns:android="http://schemas.android.com/apk/res/android" android:label="@string/spellchecker_name" android:settingsActivity="com.example.SpellCheckerSettingsActivity"> <subtype android:label="@string/subtype_generic" android:subtypeLocale="en” /> <subtype android:label="@string/subtype_generic" android:subtypeLocale="fr” /> </spell-checker>
Les métadonnées spécifient l'activité que le vérificateur orthographique utilise pour contrôler paramètres. Il définit également les sous-types du vérificateur orthographique. Dans ce cas, les sous-types définissent les paramètres régionaux que le vérificateur orthographique peut gérer.
Accéder au service du correcteur orthographique à partir d'un client
applications qui utilisent
TextView
et
EditText
Le correcteur orthographique est automatiquement appliqué aux vues, car TextView
utilise automatiquement un correcteur orthographique:
Cependant, vous souhaiterez peut-être interagir directement avec un service de correction orthographique dans d'autres cas. Le schéma suivant illustre le flux de contrôle pour l'interaction avec un correcteur orthographique:
La LatinIME l'éditeur de mode de saisie du projet Android Open Source contient un exemple le correcteur orthographique.