包括背景可绘制的foobars我在Android中的布局。想法为什么?

时间:2009-11-06 08:54:43

标签: android layout background android-linearlayout

如果我在根布局中不包含背景,那么所有内容都会按照我的预期呈现:

alt text http://dl.dropbox.com/u/299320/correct.png

但是,如果我在背景中添加JUST ONE LINE,则布局完全变得混乱:

alt text http://dl.dropbox.com/u/299320/foobared.png

XML布局的相关位是:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width ="fill_parent"
    android:layout_height="fill_parent"
    android:paddingRight ="20dip" 
    android:paddingLeft  ="20dip"
    android:gravity      ="center_vertical"
    android:background   ="@drawable/main_background">

从字面上看,上述两个屏幕截图之间的唯一区别是包含android:background="@drawable/main_background"。如果你可以帮助我,我会给你一个cookie:)

1 个答案:

答案 0 :(得分:4)

至于你为什么要体验背景的原因,可能是你的背景图像不知何故陷入了引力,但这只是猜测。

作为一种解决方法,将整件事物包裹在FrameLayout中。将FrameLayout的第一个孩子视为具有背景的ImageView。让FrameLayout的第二个孩子成为您现有的LinearLayout(无android:background)属性。由于FrameLayoutRelativeLayout允许堆叠,这会导致您的LinearLayout出现在图片上方,并且应该为您提供所寻找的视觉效果。