在ImageButton之后TextView没有显示

时间:2014-02-07 13:23:19

标签: android xml textview imagebutton

我想要一个图像按钮,下面的图像按钮,我想要文本视图。我认为我把一切都弄好了,但它并没有显示出来。有什么想法吗?

以下是代码:

<?xml version="1.0" encoding="utf-8"?>

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
              android:background="#A9F5E1"
              android:orientation="vertical">
    <TableRow android:padding="5dp"
              android:paddingBottom="10dp">
        <ImageButton android:layout_height="150dp"
                  android:layout_width="400dp"
                  android:src="@drawable/flood_sign"
                  android:background="@android:color/transparent"
                  android:id="@+id/enterPreventiva"/>
        <TextView android:layout_height="wrap_content"
                  android:layout_width="fill_parent"
                  android:text="@string/preventiva"
                  android:textColor="#FFFFFF"/>
    </TableRow>
</TableLayout>

4 个答案:

答案 0 :(得分:0)

添加一个新行并将其放在那里。

<?xml version="1.0" encoding="utf-8"?>

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:layout_width="fill_parent"
          android:layout_height="fill_parent"
          android:background="#A9F5E1"
          android:orientation="vertical">
   <TableRow android:padding="5dp"
          android:paddingBottom="10dp">
       <ImageButton android:layout_height="150dp"
              android:layout_width="400dp"
              android:src="@drawable/flood_sign"
              android:background="@android:color/transparent"
              android:id="@+id/enterPreventiva"/>
   </TableRow>
   <TableRow android:padding="5dp"
          android:paddingBottom="10dp">
       <TextView android:layout_height="wrap_content"
              android:layout_width="fill_parent"
              android:text="@string/preventiva"
              android:textColor="#FFFFFF"/>
  </TableRow>
</TableLayout>

答案 1 :(得分:0)

在那里使用框架布局。它会重叠按钮上的文字

<FrameLayout
        android:layout_width="wrap_content"
    android:layout_height="match_parent">
    <ImageButton android:layout_height="150dp"
                  android:layout_width="400dp"
                  android:src="@drawable/flood_sign"
                  android:background="@android:color/transparent"
                  android:id="@+id/enterPreventiva">
    </ImageButton>

    <TextView android:layout_height="wrap_content"
              android:layout_width="fill_parent"
              android:text="@string/preventiva"
              android:textColor="#FFFFFF">
    </TextView>
</FrameLayout>

答案 2 :(得分:0)

您需要减少ImageButton的宽度

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:layout_width="fill_parent"
          android:layout_height="fill_parent"
          android:background="#A9F5E1"
          android:orientation="vertical">
<TableRow android:padding="5dp"
          android:paddingBottom="10dp">
    <ImageButton android:layout_height="150dp"
              android:layout_width="200dp"
              android:src="@drawable/ic_launcher"
              android:background="@android:color/transparent"
              android:id="@+id/enterPreventiva"/>
    <TextView android:layout_height="wrap_content"
              android:layout_width="fill_parent"
              android:text="pratik"
              android:textColor="#FFFFFF"/>
</TableRow>

否则,您可以在新行中使用此文本

答案 3 :(得分:0)

你可以这样做:

<?xml version="1.0" encoding="utf-8"?>

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
              android:background="#A9F5E1"
              android:orientation="vertical">
    <TableRow android:padding="5dp"
              android:paddingBottom="10dp">

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="vertical" >

            <ImageButton
                android:id="@+id/enterPreventiva"
                android:layout_width="400dp"
                android:layout_height="150dp"
                android:background="@android:color/transparent"
                android:src="@drawable/ic_launcher" />

            <TextView
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:text="tes"
                android:textColor="#000000"
                android:textSize="50dp" />

        </LinearLayout>

    </TableRow>
</TableLayout>