Android视图不会显示

时间:2012-10-25 12:01:04

标签: android view imageview relativelayout

我的应用程序中有这个布局,问题是,ID ImageView的{​​{1}}没有出现在其他应用程序上,当我使用Android SDK层次结构查看器检查布局时工具,overlay高度为0,位于布局的底部。我错过了什么?或者是什么原因?

感谢。

注意:在相同条件下使用ImageView替换该视图时,不会发生此问题。但它出现在ButtonView

编辑:我使用提到的ImageView使整个视图有点偏红,我将它用作ImageView项目。

ListView

4 个答案:

答案 0 :(得分:1)

<TextView
    android:id="@+id/label"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_toLeftOf="@+id/image" />

<ImageView
    android:id="@+id/image"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"/>

<ImageView
    android:id="@+id/overlay"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:background="#77ff0000" />

在imageview中,您无法将所有对齐类型分配到一起  [1]。右侧或左侧  [2] .bottom with right or left。

答案 1 :(得分:1)

这是我用你的xml看到的(带有虚拟文字和图像)

enter image description here

1。)这是你想要的吗?如果你没有看到这个,我会感到惊讶

2。)如果这形成了你的单个列表项xml,那么在你的主列表xml中确保你将它作为参数

android:layout_width="fill_parent"
android:layout_height="wrap_content"

或者您可能看不到此项目的边缘(文本和图像,您可能只看到红色叠加层,或者文本和图像可能会重叠)

修改

如果这是您想要的 - 那么列表项现在形成一个列表项,如州

enter image description here

将代码修改为

  <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <ImageView
        android:id="@+id/image"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:src="@drawable/panda" />

    <TextView
        android:id="@+id/label"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:text="Stack Overflow"
        android:textColor="#ffffff" />


    <ImageView
        android:id="@+id/overlay"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@+id/image"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:background="#77ff0000" />


</RelativeLayout>

在运行时将图像和文本更改为您想要的内容

答案 2 :(得分:0)

我想你需要做的是android:layout_alignParentCenter="true" 而不是

android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"

@注意:所有内容都在View下,它是一个父类,无论是Button还是ImageView

答案 3 :(得分:-1)

imageView的高度为0,因为您没有设置任何来源。修复这些错误你可以试试这个:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<ImageView
    android:id="@+id/image"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"/>

<TextView
    android:id="@+id/label"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_toLeftOf="@+id/image" />

<ImageView
    android:id="@+id/overlay"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true"
    android:background="#77ff0000" />