2013-10-08 2 views
5

हाय सब लोग मैं एक कस्टम दृश्य है उस में मैं क्लिप के लिए clippath एक चक्र का उपयोग यह मेरा कोड है किclippath

Bitmap bitmap=Bitmap.createBitmap(min,min,Bitmap.Config.ARGB_8888); 
Canvas c = new Canvas(bitmap); 
Paint paint = new Paint(); 
paint.setStrokeWidth(2); 
paint.setAntiAlias(true); 
paint.setStyle(Paint.Style.FILL); 
Path path2=new Path(); 
path2.addCircle(x0, y0,r2,Path.Direction.CCW); 
c.clipPath(path2,Region.Op.DIFFERENCE); 
paint.setColor(0xFF09103e); 
c.drawCircle(x0,y0,r1,paint); 

मेरी समस्या यह है कि जब मैं अपने वृत्त यह किनारों में चिकनी नहीं है है इसके अंदर जहां यह दूसरे सर्कल द्वारा क्लिप किया गया।

+0

उपयोग 'पेंट .setFlags (Paint.ANTI_ALIAS_FLAG) '; चिकनी किनारे को आकर्षित करने के लिए यह देखने के लिए कि क्या यह समस्या हल करता है ...... – BBdev

+0

यह काम नहीं करता है। मैंने सेटफ्लैग (पेंट.एएनटीआई_एएलआईएएस_एफएलजी) सेट किया है और paint.setAntiAlias ​​(सत्य); लेकिन यह अभी भी @BBdev –

उत्तर

3

मैं अपने answer.I नहीं कर सकते चिकनी पथ setFlags(Paint.ANTI_ALIAS_FLAG) या paint.setAntiAlias(true); द्वारा cliped लगता है, लेकिन मैं paint.setXfermode(new PorterDuffXfermode(Mode.DST_IN)); के साथ एक धुंधला पारदर्शी रूप में बिटमैप के शीर्ष पर पथ आकर्षित करने के लिए कोशिश कर सकते हैं (या इसे DST_OUT था?)

+0

पर काम नहीं करता है अगर यह आपके लिए काम करता है तो आप अपना जवाब स्वीकार कर सकते हैं। – BBdev

+1

इस तस्वीर को पूरी तस्वीर के लिए जांचें http://stackoverflow.com/questions/16208365/create-a-circular-image-view-in-android –

संबंधित मुद्दे