Я знаю, это звучит легко. Мне нужно поместить текст по центру, но когда текст слишком длинный, он должен быть ниже, но по-прежнему выравниваться по центру моего xml.
Вот мой код:
<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>
Я поставил paddingTop и Bottom, потому что мне нужно немного места. PS: мой код больше; это в RelativeLayout.
Ответы:
Также установите
android:gravity
параметрTextView
вcenter
.Для тестирования эффектов различных параметров макета я рекомендую использовать разные цвета фона для каждого элемента, чтобы вы могли видеть, как меняется ваш макет с такими параметрами, как gravity, layout_gravity или другими.
источник
android:layout_gravity
. Doh! :)использовать этот способ
источник
использовать этот способ в XML
источник
Вы можете использовать следующее:
Расположение должно быть относительным для свойства "center", которое будет использоваться.
источник
Добавление
android:gravity="center"
в ваш TextView поможет (будь родительский макетRelative/Linear
)!Кроме того, вы должны избегать использования dp для размера шрифта. Вместо этого используйте sp.
источник
добавить layout_gravity и гравитацию с центральным значением в TextView
источник
Просто добавьте эти 2 строки;
источник
или
у меня оба работают.
источник