放置在ViewFlipper上时,ImageView的背景属性会被忽略

时间:2010-10-12 12:18:10

标签: android viewflipper

我有一个包含FrameLayout和两个视图的Activity。第一个是ViewFlipper,第二个是ImageView。如果我注释掉ViewFlipper,则活动会正确呈现ImageView及其背景,但是当ViewFlipper可见时,ImageView的背景将被完全忽略。

这是ViewFlipper的“功能”吗?我有办法解决这个问题吗?

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
       android:layout_width="fill_parent"
       android:layout_height="fill_parent"
       android:background="@android:color/background_light"
       >        
    <ViewFlipper android:id="@+id/flipper"
       android:layout_width="fill_parent"
       android:layout_height="wrap_content"
       android:flipInterval="5000"
       >
                <include layout="@layout/cell_1" android:id="@+id/cell_1"/>
                <include layout="@layout/cell_2" android:id="@+id/cell_2"/>
                <include layout="@layout/cell_3" android:id="@+id/cell_3"/>
   </ViewFlipper>
    <ImageView
        android:background="@drawable/alpha_gradient_background"
        android:id="@+id/statusIcon"
        android:src="@drawable/status_icon"
        android:padding="5dp"
        android:layout_gravity="right"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:top="10dp"
        android:right="10dp"
        />
</FrameLayout> 

我的背景画面看起来像这样:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
   android:shape="rectangle">
    <stroke android:width="3dp" android:color="#ffff0000" />
    <gradient
         android:startColor="#66660000"
         android:centerColor="#66006600"
         android:endColor="#66000066"
         android:angle="270" 
    />
</shape>

1 个答案:

答案 0 :(得分:0)

按钮可以放置在ViewFlipper上时渲染背景。

因此,我通过创建部分透明的PNG并将其设置为按钮上的背景图像来解决这个问题。