Мне нужно построить макет, как на картинке ниже. Основная задача - центрировать текст.
Как центрировать Вид внутри макета
Я использую этот XML для реализации макета.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main_layout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<LinearLayout
android:id="@+id/ll"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:orientation="vertical" >
<TextView
android:id="@+id/author"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/author">
</LinearLayout>
<LinearLayout
android:id="@+id/footer_layout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="bottom"
android:orientation="vertical"
android:layout_alignParentBottom="true">
<LinearLayout
android:id="@+id/menu_layout"
android:layout_width="fill_parent"
android:layout_height="60dp"
android:background="@drawable/nav_overlay"
android:gravity="center_horizontal"
android:orientation="horizontal">
<Button
android:id="@+id/previous"
android:layout_width="45dp"
android:layout_height="45dp"
android:background="@drawable/button" />
</LinearLayout>
<com.google.ads.AdView
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
android:id="@+id/adView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
ads:adSize="BANNER"
ads:adUnitId="@string/admob_id"
ads:loadAdOnCreate="true" />
</LinearLayout>
</RelativeLayout>
Но он работает некорректно.
Мне нужно сосредоточиться TextView
android:id="@+id/author"
внутри LinearLayout
android:id="@+id/ll"
. Но он сосредоточен в родителе RelativeLayout
android:id="@+id/main_layout"
.
Я использую android:layout_height="fill_parent"
для LinearLayout
android:id="@+id/ll"
.
Как мой макет заполнить не родительский, а только оставшееся пространство?
Приведите пример своей реализации, если кто-нибудь придет к подобной проблеме.
EDIT: Теперь у меня неправильный текст с центром, как на картинке ниже.
В данный момент я считаю, что лучшим решением является использование android: layout_weight.
Но когда реклама не отображается, пропорции нарушаются.
жаль , проверьте мой ответ еще раз. – goodm
Даже при использовании 'android: layout_above:" @ + id/footer_layout "' still 'LinearLayout'' android: id = "@ + id/ll" 'растягивается до полного родителя' RelativeLayout' – dimetil
Я только что проверил его и он работает отлично, я обновил свой ответ. – goodm