Android xml поместите компонент сверху с layout_gravity = "center" - PullRequest
0 голосов
/ 26 ноября 2010

Я пытаюсь поместить объявление admob вверху моего app, но обычный текст должен оставаться по центру ... с приведенным ниже кодом отображается только один из компонентов ..

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:myapp="http://schemas.android.com/apk/res/test.testpkg"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_gravity="center"
    android:gravity="center"
    android:background="@drawable/background"
    android:padding = "10dip" >

    <com.admob.android.ads.AdView
        android:id="@+id/ad" 
        android:gravity="center"
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content"
        myapp:backgroundColor="#000000"
        myapp:primaryTextColor="#FFFFFF"
        myapp:secondaryTextColor="#CCCCCC" />

    <test.testpkg.CustomTextView android:id="@+id/landscapeText"
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content"
        android:textColor = "#000"
        android:textSize="40sp"
        android:shadowColor="#FFF"
        android:shadowDx="1.2"
        android:shadowDy="1.2"
        android:shadowRadius="1.2"
        android:gravity="center_vertical"
        android:text ="Test" />
</LinearLayout>

1 Ответ

1 голос
/ 26 ноября 2010

LinearLayout имеет дополнительный атрибут android: ориентация (документ). Значением по умолчанию является «горизонтальное», но вам нужно «вертикальное», поскольку в данный момент CustomTextView отображается справа от AdView и за пределами экрана.

Дополнительная подсказка: если вы хотите, чтобы ваш CustomTextView действительно находился в середине экрана, вы должны использовать RelativeLayout вместо LinearLayout и добавить атрибут android: layout_centerInParent = "true" -> будет отображаться в середине.

...