Проблема относительного размещения Android с гравитацией

Как я могу поместить textview с id = "naslov" в центр? Я также пробовал с layout_gravity = "center", но это тоже не работает.

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:id="@+id/naslov" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="20dip" android:text="Povzetek" android:gravity="center"/> <TextView android:id="@+id/aha" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="10dip" android:text="Vseh oddaj:" android:layout_below="@id/naslov"/> </RelativeLayout> 

Solutions Collecting From Web of "Проблема относительного размещения Android с гравитацией"

  android:layout_centerHorizontal="true" 
  android:layout_centerHorizontal="true" 

Есть также

 android:layout_centerInParent="true" 

Полный список атрибутов RelativeLayout находится здесь

Кроме того, вы можете указать TextView для fill_parent, а затем установить на него гравитацию = центр. Таким образом, он будет центрировать фактический текст в textView.

Дополнительный ответ

Как более общий ответ на этот вопрос, layout_gravity не работает с layout_gravity RelativeLayout . Он предназначен для использования с LinearLayout или FrameLayout . Тем не менее, subviews RelativeLayout все равно может использовать gravity как обычно, потому что это то, как представление упорядочивает собственное содержимое.

См. Сравнение на следующем изображении. Зеленые и синие точки – это TextViews внутри RelativeLayout .

Введите описание изображения здесь

gravity работает, но layout_gravity нет. Более подробно см. Мой более полный ответ .

Смотрите также

  • Гравитация и layout_gravity на Android
  • Позиционирование в RelativeLayout

android:layout_gravity="center_horizontal" как атрибут в рассматриваемом TextView.

Вы можете перейти на вкладку графического макета в файле activity_main.XML и выбрать элемент, который вы хотите поместить, и изменить его с трех вкладок вверху. Или вы можете просто поместить это: android: layout_gravity = "center_horizontal".