Wiem, że to brzmi łatwo. Muszę umieścić tekst na środku, ale gdy tekst jest zbyt długi, musi znajdować się poniżej, ale nadal wyrównywać na środku mojego xml.
Oto mój kod:
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/showdescriptioncontenttitle"
android:paddingTop="10dp"
android:paddingBottom="10dp"
android:layout_centerHorizontal="true"
>
<TextView
android:id="@+id/showdescriptiontitle"
android:text="Title"
android:textSize="35dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</LinearLayout>
Umieściłem paddingTop i Bottom, ponieważ potrzebuję trochę miejsca. PS: Mój kod jest większy; jest w RelativeLayout.
Odpowiedzi:
Ustaw również
android:gravity
parametr wTextView
nacenter
.Aby przetestować efekty różnych parametrów układu, zalecam użycie innego koloru tła dla każdego elementu, aby można było zobaczyć, jak zmienia się układ z parametrami takimi jak grawitacja, układ_grawitacji lub inne.
źródło
android:layout_gravity
. No! :)używać w ten sposób
źródło
użyj w ten sposób w XML
źródło
Możesz użyć następujących:
Aby można było użyć właściwości „center”, układ musi być względny.
źródło
Dodanie
android:gravity="center"
do TextView załatwi sprawę (być układem nadrzędnymRelative/Linear
)!Należy również unikać używania dp do określania rozmiaru czcionki. Zamiast tego użyj sp.
źródło
dodaj layout_gravity i gravity z wartością środkową w TextView
źródło
Po prostu dodaj te 2 linie;
źródło
lub
oba działają dla mnie.
źródło