scrollview导致黑色背景出现

时间:2012-04-17 21:09:46

标签: android scrollview

我只是添加这样的滚动视图,并在屏幕加载后出现黑色背景。

此黑色区域位于周围RelativeLayout的左上角和最上角。滚动视图位于android:layout_marginLeft="20dp" android:layout_marginTop="40dp"左侧,因此左侧20dp和顶部40dp为黑色,而剩余的灰色背景未受干扰。

这里是带有scrollView的xml部分:

  <View
            android:id="@+id/emptyView"
            android:layout_width="match_parent"
            android:layout_height="2dp"
            android:layout_below="@+id/right1" />

        <RelativeLayout
            android:id="@+id/right2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/emptyView" >

            <RelativeLayout
                android:id="@+id/right22"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_below="@+id/emptyView" >

                <ImageView
                    android:id="@+id/emptyView2"
                    android:layout_width="match_parent"
                    android:layout_height="2dp"
                    android:contentDescription="@string/anyStringValue" />

                <HorizontalScrollView
                    android:id="@+id/scrollView"
                    android:layout_width="fill_parent"
                    android:layout_height="520dp"
                    android:layout_marginLeft="20dp"
                    android:layout_marginTop="40dp"
                    android:background="#0000FF" >

                    <TextView
                        android:id="@+id/infoTxt"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:background="#FF0000"
                        android:padding="10dp"
                        android:text="@string/Settings_infoTxt"
                        android:textColor="#000000"
                        android:textSize="20dp" />
                </HorizontalScrollView>
            </RelativeLayout>
        </RelativeLayout>

我已经尝试在滚动视图顶部添加一个emptyView以及2个RelativeLayouts。但无论如何,黑色区域都会出现。 (有/没有RelativeLayouts和顶部的空视图)

由于整个页面的背景为灰色,因此该黑色区域会扭曲整个屏幕。

之前我曾多次使用滚动视图,但从来没有像这样的问题。我不知道造成这种情况的原因。

如何摆脱滚动视图导致的黑色区域?

非常感谢!

1 个答案:

答案 0 :(得分:2)

我遇到了同样的问题,加载滚动视图时出现了一些黑色区域,触摸时消失了。 我通过不设置滚动视图的背景颜色来解决它。设置conten视图的背景颜色应该足够了。

      //outer layout, where black shapes appear
    LinearLayout outer = new LinearLayout(context);
    outer.setBackgroundColor(Color.MAGENTA);

    ScrollView list = new ScrollView(context);
    list.setLayoutParams(new LayoutParams(100, 300));

    //        do not set the background color here, this causes the blak shapes
    //        list.setBackgroundColor(Color.CYAN);
    //        add an inner layout to the scrollView and set the background of the innerlayout
    LinearLayout linearLayout = new LinearLayout(context);
    linearLayout.setBackgroundColor(Color.CYAN);
    linearLayout.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT));

    list.addView(linearLayout);
    outer.addView(list);