透明面具显示为黑色

问题描述:

我正在为图像制作面具。在我的大多数设备上,它工作正常。以下是我如何制作它。透明面具显示为黑色

enter image description here

<ImageView 
     android:id="@+id/im_photo" 
     android:layout_width="85dip" 
     android:layout_height="64dip" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentTop="true" 
     android:layout_marginRight="8dip" 
     android:scaleType="centerCrop" /> 

    <View 
     android:layout_width="85dip" 
     android:layout_height="64dip" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentTop="true" 
     android:layout_marginRight="8dip" 
     android:background="@drawable/rounded_mask_background" 
     android:duplicateParentState="true" /> 

面具

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android" android:exitFadeDuration="@android:integer/config_shortAnimTime"> 


    <item android:state_selected="true" android:state_activated="true" android:drawable="@drawable/selected_patch" /> 
    <item android:state_activated="true" android:drawable="@drawable/rounded_mask_selected" /> 
    <item android:state_selected="true" android:drawable="@drawable/rounded_mask_selected" /> 
    <item android:state_checked="true" android:drawable="@drawable/rounded_mask_selected" /> 
    <item android:state_focused="true" android:drawable="@drawable/rounded_mask_selected" /> 
    <item android:state_pressed="true" android:drawable="@drawable/rounded_mask_selected" /> 
    <item android:drawable="@drawable/rounded_mask_unselected" /> 

</selector> 

rounded_mask_unselected

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item 
     android:bottom="-10dp" 
     android:left="-10dp" 
     android:right="-10dp" 
     android:top="-10dp"> 
     <shape android:shape="rectangle"> 
      <stroke 
       android:width="10dp" 
       android:color="@color/dark_gray" /> 
      <corners android:radius="20dp" /> 
     </shape> 
    </item> 
</layer-list> 

不幸的是在某些设备(如Galaxy Tab的7.7),我的面具是completle黑色(如果我删除它,我看到揭露图像)
enter image description here 我该如何解决它?

+0

我看到了这样的相关硬件加速效果。我建议尝试在视图上启用/禁用硬件加速。 – HexAndBugs

+0

@HexBugsAndSausageRolls改变硬件加速没有效果 – Yarh

此问题是由不同设备的不同默认颜色引起的。有时默认颜色是透明的,有时是黑色的。解决方案 - 明确陈述背景。