android ImageButton响应不规则图片
16lz
2021-01-26
博客园的文章,搬家就搬过来了。
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; } });
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; } });
更多相关文章
- 解决android模拟器太大,小屏幕无法完全显示的问题
- android 问题汇总系列之八
- android ScrollView,ListView 截屏并保存到图库
- Android(安卓)使用OKHttp获取字符串和下载图片
- Android之Android(安卓)studio设置背景图片
- 初学Android,图形图像之使用Bitmap和BitmapFactory(二十四)
- arcgis for android 学习 - (8) 空间查询 - 点击某点,选中该点所
- 巧用android setTag()
- android实现为PreferenceScreen设置背景图片等