Ich habe eine Textansicht. Ich versuche, den ersten Buchstaben in jedem Wort groß zu schreiben.
Hier ist die Textansicht:
%Vor%So füge ich den Text hinzu:
%Vor% Kann ich Text nicht dynamisch hinzufügen und erwarte, dass er die Wörter groß schreibt? Stört ein anderes Merkmal android:capitalize
? Ist android:capitalize
defekt?
Danke für Ihre Antworten.
capitalize
ist im Grunde genommen nur ein KeyListener
, das Sie in XML setzen können. Es gilt also nur für Texteingabe durch den Benutzer. Wie die Dokumentation besagt (Hervorhebung von mir):
Wenn gesetzt, wird angegeben, dass diese TextView eine textuelle Eingabemethode hat und automatisch großgeschrieben werden soll. .
Es gibt eine verwandte Frage zu Wie man den ersten Buchstaben jedes Wortes in Java groß schreibt , das einige hilfreiche Antworten enthält.
@ Shines Antwort ist richtig. Ich weiß nicht, warum sie abgelehnt wurde. Android: Groß- und Kleinschreibung wurde in API 3 nicht weiter unterstützt. Die TextView-Dokumente geben dies leider nicht an, der Beweis ist in R.attr:
eingebettetAndroid Studio kann Sie auch nicht darüber informieren, dass dieses Attribut veraltet ist. Weitere 30 Minuten werde ich nie zurückkommen, danke google!
android:capitalize
ist jetzt veraltet.
Anstatt android:capitalize="words"
zu verwenden, solltest du android:inputType="textCapWords"
verwenden.
Je nach Ihren Anforderungen können Sie auch mehrere Werte verwenden, z. B. android:inputType="textCapWords|textPersonName"
.
android: capitalize ist auf ICS veraltet, daher sollte es besser sein, es im Code zu machen (d. h. mit String.toUpperCase () )
Ein anderer Versuch könnte
sein %Vor%aber ich denke, es würde einen EditText erfordern.
Ich weiß nicht, ob dies der Grund für Ihren Code ist, Welche Version zielen Sie auf ?