Ich kann android:gravity="bottom|center_horizontal"
in XML in einer Textansicht meine gewünschten Ergebnisse erzielen, muss dies jedoch programmgesteuert tun. Meine Textansicht befindet sich in a, tablerow
wenn das in a wichtig ist relativelayout
.
Ich habe versucht:
LayoutParams layoutParams = new TableRow.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, Gravity.BOTTOM | Gravity.CENTER_HORIZONTAL);
labelTV.setLayoutParams(layoutParams);
Aber wenn ich richtig verstehe, würde das auf die tablerow
, nicht auf die Textansicht angewendet werden?
it.gravity = Gravity.CENTER_HORIZONTAL or Gravity.BOTTOM
or
und nichtand
?! ??!Dadurch wird der Text in einer Textansicht zentriert:
quelle
LayoutParams
hier nicht definiert ist und variieren kann, sodass er nicht kompiliert werden kann. Sie sollten ein übergeordnetes Layout kennen (zum BeispielLinearLayout
) und es hier schreiben.Wir können die Schwerkraft des Layouts in jeder Ansicht wie unten einstellen.
Dies entspricht dem folgenden XML-Code
quelle
Sie sollten verwenden
textView.setGravity(Gravity.CENTER_HORIZONTAL);
.Denken Sie daran, dass mit
wird nicht funktionieren. Dadurch wird die Schwerkraft für das Widget und nicht für den Text festgelegt.
quelle
Verwenden Sie diesen Code
quelle
Dadurch wird die Schwerkraft Ihrer Textansicht festgelegt.
quelle
Dies wurde gelöst, indem ein paar Dinge getan wurden, zuerst das
height
von mirTextView
abgerufen und durch den Text getaucht wurdesize
, um die Gesamtanzahl der mit dem möglichen Zeilen zu erhaltenTextView
.Nachdem Sie diesen Wert erhalten haben, müssen Sie Ihren
TextView
maxLines
Wert auf diesen neuen Wert einstellen .Stellen Sie den Wert
Gravity
auf ein,Bottom
sobald die maximale Zeilenanzahl überschritten wurde und automatisch nach unten gescrollt wird.Damit dies korrekt funktionieren kann , müssen Sie verwenden ,
append()
um dasTextView
, wenn SiesetText()
dies nicht funktionieren wird .Der Vorteil dieser Methode ist, dass sie unabhängig
height
von IhremTextView
und dem Text dynamisch verwendet werden kannsize
. Wenn Sie Änderungen an Ihrem Layout vornehmen, funktioniert dieser Code weiterhin.quelle