我有一个包含位置图像的Imageview。图像有一些可以点击的区域,例如。考虑医院,机场。点击它我想导航用户到下一个屏幕。问题是获得图像部分的单独点击监听器,我也有缩放图像的功能。任何人都可以指导我如何实现这一目标?
答案 0 :(得分:1)
试试这个: 如果您的图标有不同的颜色,它将最有效
ImageView imageView = (ImageView) findViewById(R.id.test_image);
final Bitmap bitmap = ((BitmapDrawable)imageView.getDrawable()).getBitmap();
imageView.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
int x = (int)event.getX();
int y = (int)event.getY();
现在像素将具有int格式的颜色代码,您可以根据该颜色代码确定单击了哪个图标
int pixel = bitmap.getPixel(x,y);
//if you want separate RGB value
int redValue = Color.red(pixel);
int blueValue = Color.blue(pixel);
int greenValue = Color.green(pixel);
return false;
}
});
希望这有帮助!!!
答案 1 :(得分:0)
创建与医院,机场等图像重叠的各种视图。 在这些视图上设置单击侦听器,以将用户重定向到所需的任何屏幕。
我认为这可能是解决问题的方法之一..