Ich suche wirklich nach einer Antwort darauf .
Möchten Sie die Breite einer Textansicht basierend auf einer Zahl oder Zeichen festlegen? Wenn ich also möchte, dass es immer 3 Zeichen breit ist, kann ich das einstellen und es wird basierend auf der textSize-Einstellung angepasst. Ohne dies muss ich eine Breite auf 50dip oder so einstellen, was je nach Schriftgröße richtig sein kann oder nicht.
sp
.minEms
ist wahrscheinlich eine bessere Antwort.Antworten:
Beantwortung meiner eigenen Frage ...
Und der Gewinner ist: Setze das
minEms
Attribut (android:minEms
) !!!" Ems " bezieht sich also auf die Größe des breitesten Zeichens, normalerweise ein "M", verstanden? Wenn Sie also minEms in einem EditText oder einer Textansicht auf einen ganzzahligen Wert von beispielsweise 3 setzen, sollte sichergestellt sein, dass er mindestens 3 Zeichen breit ist. Sie können auch die maxEms einstellen.
Kyles Antwort auf diesen Thread hat mich veranlasst, die Antwort zu finden, obwohl sie falsch ist. Also danke Kyle.
quelle
layout_width
Bedürfnisse seinwrap_content
für minEms und maxEms zu arbeiten , wie beabsichtigt, da diese Antwort Punkte aus.Bei den meisten Schriftarten sind nicht alle Zeichenbreiten identisch. Kurier ist vielleicht die am häufigsten verwendete Ausnahme, aber betrachten Sie im Allgemeinen zum Beispiel den Unterschied zwischen einem i und einem A. Dies macht das, was Sie verlangen, zu einem Problem.
quelle
Versuchen Sie es mit:
android:maxLength="3"
Dadurch wird Ihr Text auf eine bestimmte Anzahl von Zeichen beschränkt.
quelle