2010-10-12 73 views
0

我有一個包含FrameLayout和兩個視圖的Activity。第一個是ViewFlipper,第二個是ImageView。如果我註釋掉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> 

回答

0

看來,按鈕是能夠當放置在ViewFlipper來渲染他們的背景。

因此,我通過創建一個部分透明的PNG並將其設置爲按鈕上的背景圖像來解決此問題。