android ImageButton响应不规则图片

来源:互联网 发布:修补系统漏洞软件 编辑:程序博客网 时间:2024/05/22 06:52
博客园的文章,搬家就搬过来了。

android ImageButton默认响应区域是矩形,而有时候界面的需要会使用不规则图片,比如扇形,要响应有图片的地方,没图片的地方不响应,今天想了下,实现了,关键代码如下:
imgbt=(ImageButton)findViewById(R.id.imgbt01);
bitmap=((BitmapDrawable)(imgbt.getDrawable())).getBitmap();//得到ImageButton的图片
imgbt.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
if(bitmap.getPixel((int)(event.getX()),((int)event.getY()))==0){//判断点击处像素的颜色是否为0,0表示没                                                                                                                                     //内容
System.out.println("点击区没图像    "+
bitmap.getPixel((int)(event.getX()),((int)event.getY())));
}else{
System.out.println("点击区有图像    "+
bitmap.getPixel((int)(event.getX()),((int)event.getY())));
}
return false;
}
});