2013-12-16 102 views
0

我跟着本教程here並得到了一個問題:如何覆蓋圖像,而不是顏色?任何人都可以回答嗎?如何覆蓋圖像

+0

如果您的覆蓋圖是一個視圖,您可以簡單地覆蓋onDraw()並繪製位圖。 – Shashika

+0

http://stackoverflow.com/a/12548585/1168654 –

回答

1

你可以用小工具簡單地做到這一點:

FrameLayout是在另一個之上疊加視圖中的通用機制:

<?xml version="1.0" encoding="utf-8"?> 
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"> 
<ImageView 
    android:id="@+id/image" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:src="@drawable/my_image"/> 
<View 
    android:id="@+id/overlay" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"/> 
</FrameLayout> 

然後在Java代碼中,你可以動態設置的透明度您覆蓋:

View overlay = (View) findViewById(R.id.overlay); 
int opacity = 200; // from 0 to 255 
overlay.setBackgroundColor(opacity * 0x1000000); // black with a variable alpha 
FrameLayout.LayoutParams params = 
    new FrameLayout.LayoutParams(FrameLayout.LayoutParams.FILL_PARENT, 100); 
params.gravity = Gravity.BOTTOM; 
overlay.setLayoutParams(params); 
overlay.invalidate(); // update the view 
+0

嗯嗯................. – NEXTGENINTL

+0

這不是我想要它的方式 – NEXTGENINTL