2012-04-03 144 views
1

我已将ImageView,SurfaceView和控制元素覆盖为ImageView的框架布局。因此,使用SurfaceView播放MediaPlayer媒体,然后使用ImageView然后MediaPlayer将媒体准备为静止图像。然后在准备ImageView与静止图像setVisibility - GONE和我们播放视频。问题出在控制ImageViews。因为他们一个PNG图像与透明图形,然后覆盖在透明区域上看起来不错,但MediaPlayer播放视频,透明区域的图形看起来非常有色,我们禁用此控件...android:图像作为带有MediaPlayer的SurfaceView透明度的按钮

请帮我建议如何使控件看起来相同覆盖ImageViewSurfaceView

<?xml version="1.0" encoding="utf-8"?> 
<merge xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/FrameLayout" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" > 

<SurfaceView 
    android:id="@+id/svMain" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" /> 

<ImageView 
    android:id="@+id/ivMain" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:scaleType="fitXY" 
    android:src="@drawable/still_image" /> 

<RelativeLayout 
    android:id="@+id/controls" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:gravity="bottom" > 

    <ImageView 
     android:id="@+id/ibtnStart" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentTop="true" 
     android:clickable="true" 
     android:onClick="ibtnClick" 
     android:src="@drawable/start_image" /> 

    <ImageView 
     android:id="@+id/ibtnStop" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentTop="true" 
     android:clickable="true" 
     android:onClick="ibtnClick" 
     android:src="@drawable/stop_image" /> 

</RelativeLayout> 

</merge> 
+0

你有没有找到解决这个问题呢?我一直有相同的问题相当长一段时间没有解决... – 2013-01-18 20:44:18

回答

0

我不知道多少,这会有所帮助,但你可以使用

controls.setColor(Color.argb(00, 0, 0, 0)); 

第一个参数表示负责transperency alpha值尝试设置控件的背景色。塞提特00 值范围为00-255

+0

不幸的是,也没有帮助太.. – wizemanold 2012-04-03 17:35:52

+0

也许如果你可以上传一个现在是如何的屏幕截图,我们可以更好地了解你想要什么... – Ajay 2012-04-04 17:26:40

+0

奇怪,但我无法在MediaPlayer正在播放SurfaceView时进行正常的屏幕截图,只有我的控件在一个空白屏幕上。 – wizemanold 2012-04-05 05:40:37

0

你可以试试:

ImageView logo = (ImageView) findViewById(R.id.logo); 
logo.setAlpha(110); 
+0

这没有帮助,整个图像现在透明,但又覆盖了SurfaceView和ImageView看起来不一样。 ..也许MediaPlayer使用了一些其他的Alpha混合比ImageView? – wizemanold 2012-04-03 17:23:14