1

我正在尝试设置 ViewFlipper 内的绝对布局的背景。我得到的显示在这张图片上。蓝色部分没有填满整个屏幕,它在右侧和底部有一个白色部分。我把这个白色部分变成黄色,这样它更明显。

在此处输入图像描述

当我对不在 ViewFlipper 内的布局使用相同的代码时,它可以正常工作。

XML 代码:

<ViewFlipper xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/view_flipper_id"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_margin="6dip" >

<AbsoluteLayout
    android:id="@+id/main_layout_id"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

</AbsoluteLayout>

<AbsoluteLayout
    android:id="@+id/secondary_layout_id"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >
</AbsoluteLayout>

</ViewFlipper>

我在哪里更改背景颜色:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    ViewFlipper viewFlipper= (ViewFlipper)findViewById(R.id.view_flipper_id);
    AbsoluteLayout mainLayout=(AbsoluteLayout)viewFlipper.getChildAt(0);

     mainLayout.setBackgroundColor(Color.rgb(0, 0, 255));
}

感谢您提前提供任何帮助

4

1 回答 1

0

您将边距设置为ViewFlipper6dp,这意味着内部布局将为父 View 留下 6 个像素。这意味着为内部布局设置背景不会影响这 6 个像素。

只需删除此行:

android:layout_margin="6dip" 
于 2013-04-19T18:50:48.920 回答