ImageButton不可见

时间:2012-08-14 23:17:08

标签: java android

有人可以告诉我为什么在使用此布局时我的ImageButton没有显示:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/main"
    android:orientation="vertical" >


    <ImageButton
        android:id="@+id/continuebutton"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1.02"
        android:background="@android:color/transparent"
        android:src="@drawable/continuebutton"
        android:visibility="visible" />

</RelativeLayout>

当我使用LinearLayout时,它显示得很好。任何人都可以澄清我做错了什么?

1 个答案:

答案 0 :(得分:1)

您正在尝试将layout_weight添加到RelativeLayout - 这没有任何意义。相对布局将项目相对于彼此放置。它们的宽度和高度没有像LinearLayout那样整体计算,因为流程在线性布局上很重要,而不是在相对布局中。

将按钮设置为wrap_content或match_parent。如果你想要权重,可以在RelativeLayout中嵌入一个LinearLayout。

有关此内容的详细信息:Percentage width in a RelativeLayout

修改 当计算如何布局其子视图时,LinearLayout会查看其方向上的权重AND 0dip值。假设您在水平线性布局中并排放置2个项目...如果它们都是0dip宽度,则宽度将根据其重量计算。 RelativeLayout不会这样做。它不担心物品的流动。它将物品相对于彼此放置。

HTH