आप Canvas
और BitmapShader
के मानक विधियों का उपयोग कर इसे प्राप्त कर सकते हैं।
सबसे पहले विधि ऐसा दिखाई दे सकता:
@Override protected void onDraw(Canvas canvas) {
//bitmap 01
canvas.save(Canvas.CLIP_SAVE_FLAG);
canvas.clipPath(shape01);
canvas.drawBitmap(bitmap01, 0, 0, paint);
canvas.restore();
//bitmap 02
canvas.save(Canvas.CLIP_SAVE_FLAG);
canvas.clipPath(shape02);
canvas.drawBitmap(bitmap02, 0, 0, paint);
canvas.restore();
}
दूसरा ऐसा दिखाई दे सकता:
BitmapShader shader01 = new BitmapShader(bitmap01, Shader.TileMode.CLAMP, Shader.TileMode.CLAMP);
BitmapShader shader02 = new BitmapShader(bitmap02, Shader.TileMode.CLAMP, Shader.TileMode.CLAMP);
Paint paint01 = new Paint();
Paint paint02 = new Paint();
paint01.setShader(shader01);
paint02.setShader(shader02);
@Override protected void onDraw(Canvas canvas) {
//bitmap 01
canvas.drawPath(path01, paint01);
//bitmap 02
canvas.drawPath(path02, paint02);
}
तो आप अपने आकार, लोड बिटमैप्स को परिभाषित करने और उन्हें आकर्षित करने के लिए की जरूरत है।
कैनवास का उपयोग करने के लिए "ImageViews" के साथ ऐसा करने का कोई आसान तरीका नहीं है। – doubleA
मैं इसे ImageViews पर लागू नहीं करना चाहता, मैं इसे ViewGroups के लिए करना चाहता हूं। –
@ मारवानजकारिया आप इसका उत्तर पाने में सक्षम हैं अगर इसे कार्यान्वित किया जाता है तो यह अच्छा लगता है – SAVVY