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