当重力设置到设备时,TextView会停止在设备上显示

时间:2013-11-08 08:46:19

标签: android xml android-layout

我正在使用包含LinerLayoutTextView的布局。 当我将gravity属性设置为TextView时,它会停止在设备上显示,但会显示在Android布局预览中。

以下是xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/txtProductName"
        android:layout_width="fill_parent"
        android:layout_height="0dip"
        android:layout_weight="0.1"
        android:background="@android:color/black"
        android:ellipsize="start"
        android:gravity="center"
        android:text="TextView"
        android:textColor="@android:color/white"
        android:textSize="20sp" />

    <LinearLayout
        android:id="@+id/grapher"
        android:layout_width="match_parent"
        android:layout_height="0dip"
        android:layout_weight="0.9"
        android:background="#000000"
        android:orientation="vertical" >
    </LinearLayout>

</LinearLayout>

以下是预览屏幕上的外观

Preview Screen

然而在设备上它停止显示

enter image description here

但是当我删除它显示在设备上的gravity属性时。 为什么会这样?我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

我使用线性布局作为父布局,它在模拟器和真实设备上都有效..这是xml: - &gt;

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<TextView
    android:id="@+id/txtProductName"
    android:layout_width="fill_parent"
    android:layout_height="0dip"
    android:layout_weight="0.1"
    android:background="@android:color/black"
    android:ellipsize="start"
    android:gravity="center"
    android:text="TextView"
    android:textColor="@android:color/white"
    android:textSize="20sp" />

<LinearLayout
    android:id="@+id/grapher"
    android:layout_width="match_parent"
    android:layout_height="0dip"
    android:layout_weight="0.9"
    android:background="#000000"
    android:orientation="vertical" >
</LinearLayout>

</LinearLayout>

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <TextView android:id="@+id/txtProductName" android:layout_width="fill_parent" android:layout_height="0dip" android:layout_weight="0.1" android:background="@android:color/black" android:ellipsize="start" android:gravity="center" android:text="TextView" android:textColor="@android:color/white" android:textSize="20sp" /> <LinearLayout android:id="@+id/grapher" android:layout_width="match_parent" android:layout_height="0dip" android:layout_weight="0.9" android:background="#000000" android:orientation="vertical" > </LinearLayout> </LinearLayout>

请使用线性布局作为父母,如果有任何问题,请快速告诉我。

答案 1 :(得分:0)

// try this
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:gravity="center"
    android:padding="5dp"
    android:layout_width="match_parent">
    <TextView
        android:id="@+id/txtProductName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@android:color/black"
        android:ellipsize="start"
        android:text="TextView"
        android:textColor="@android:color/white"
        android:textSize="20sp" />

    <LinearLayout
        android:id="@+id/grapher"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:layout_marginTop="5dp"
        android:background="#000000"
        android:orientation="vertical" >
    </LinearLayout>
</LinearLayout>