2

Avant de marquer ma question en tant que duplicate, notez qu'il y a un malentendu fondamental dans ce fil à propos de ce que signifie "cas de titre". Dans la langue anglaise, Titre Cas n'est pas la même chose que d'avoir chaque mot en majuscule. Dans un titre, nous devrionsConvertir une chaîne en cas de titre dans android

  • Capitaliser les noms, les pronoms, les adjectifs, les verbes, les adverbes et les conjonctions subordonnées.
  • Articles en minuscules (a, an, the), conjonctions de coordination et prépositions.

Depuis la même question que je montre est aussi un peu daté, je me demandais si quelqu'un est au courant de toute installation Android pour convertir une chaîne en cas de titre? Ou est la seule option pour lancer ma propre classe? Pour un peu d'arrière-plan, si vous y tenez, je construis une application qui a du contenu généré par l'utilisateur, en plus des contenus générés par des experts. Je veux que mon application soit intelligente et professionnelle. Donc pour l'EditText j'active textAutoComplete|textAutoCorrect. Mais en plus, je veux que le titre ressemble à des titres, pas seulement des chaînes qui ont été tapées par des utilisateurs aléatoires.

+0

Drôle. En allemand, vous devez uniquement mettre en majuscules les noms et les noms personnels (premier, dernier et moyen le cas échéant). Et la première lettre après la marque (bien sûr). Comme indiqué dans cette phrase. Blagues à part, ce post sur codereview pourrait être d'un certain intérêt ... ou est-ce? http://codereview.stackexchange.com/questions/100832/java-port-of-titlecase –

+0

Je crains que vous n'ayez à écrire du code pour cela. – Christine

Répondre

4

Il est très tard réponse mais peut être peut aider les autres.

public static String changeStringCase(String s) { 

final String DELIMITERS = " '-/"; 

StringBuilder sb = new StringBuilder(); 
boolean capNext = true; 

for (char c : s.toCharArray()) { 
    c = (capNext) 
      ? Character.toUpperCase(c) 
      : Character.toLowerCase(c); 
    sb.append(c); 
    capNext = (DELIMITERS.indexOf((int) c) >= 0); 
} 
return sb.toString(); } 

sortie sera

  1. Changer la casse -> Modifier la casse
  2. CHANGEMENT DE CAS -> Modifier la casse
  3. changer la casse -> Modifier la casse

etc ..