MainActivity:
public class MainActivity extends Activity {
Button button;
Button button2;
Button button3;
ImageView imageView;
RelativeLayout mainLayout;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button=(Button)findViewById(R.id.button);
button2=(Button)findViewById(R.id.button2);
button3=(Button)findViewById(R.id.button3);
imageView=new ImageView(this);
mainLayout=(RelativeLayout)findViewById(R.id.activity_main);
WindowManager windowManager=(WindowManager) getSystemService(WINDOW_SERVICE);
WindowManager.LayoutParams wParams= new WindowManager.LayoutParams(
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.TYPE_PHONE,
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,
PixelFormat.TRANSLUCENT
);
Bitmap b= BitmapFactory.decodeResource(getResources(),R.drawable.gatto);
RoundedImage roundedImage=new RoundedImage(this,b,200);
windowManager.addView(roundedImage,wParams);
}
}
RoundedImage:
public class RoundedImage extends ImageView{
private Bitmap figura;
private int radius;
public RoundedImage(Context context, Bitmap figura, int radius){
super(context);
this.figura=figura;
this.radius=radius;
Bitmap bitmap=Bitmap.createBitmap(radius,radius,Bitmap.Config.ARGB_8888);
Paint paint=new Paint();
Canvas canvas=new Canvas(bitmap);
canvas.drawCircle(bitmap.getWidth()/2,bitmap.getHeight()/2,bitmap.getWidth()/2,paint);
Rect fromRect=new Rect(0,0,figura.getWidth(),figura.getHeight());
Rect toRect=new Rect(0,0,bitmap.getWidth(),bitmap.getHeight());
paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_IN));
canvas.drawBitmap(figura,fromRect,toRect,paint);
setImageBitmap(bitmap);
}
}
E accidenti, se funziona!
Nessun commento:
Posta un commento