2011-02-25 13 views
8

पर पारदर्शी आकार खींचें मेरे पास एक पृष्ठभूमि छवि है जो पूरी स्क्रीन लेती है। मैं पृष्ठभूमि पर कैनवास खींच रहा हूं और अपना रंग सफेद रंग में रख रहा हूं ताकि आप अभी तक छवि नहीं देख सकें। जो मैं हासिल करने की कोशिश कर रहा हूं वह है कि फिर सफेद कैनवास पर एक पारदर्शी आकार खींचा जाए और उस आकार के माध्यम से पृष्ठभूमि छवि दिखाएं। मैं सतही दृश्य का उपयोग कर रहा हूं और SurfaceView.Callback लागू कर रहा हूं।कैनवास

उत्तर

7

आप सफेद रंग पारदर्शी बनाना चाहिए:

public void draw(Canvas canvas) 
{ 
    final RectF rectF = new RectF(); 
    final Paint paint = new Paint(); 
    paint.setARGB(128, 255, 255, 255); 

    rectF.set(0,0, getMeasuredWidth(), getMeasuredHeight()); 

    canvas.drawRect(rectF, paint); 
} 
7

पारदर्शी आकार आकर्षित करने के लिए इस कोड का पालन

Paint paint = new Paint(); 
paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.CLEAR)); 

//draw any shape, here I am drawing Rect shape 
Rect rect=new Rect(left, top, right, bottom); 
canvas.drawRect(rect,paint); 
+2

यह क्षेत्र छोड़ काला –