图像触摸选择区域

4
我们正在为教育开发图像映射。老师可以在图片上添加问题。模式答案基于老师所选的图片触摸选择。
例如:
哪些区域代表拥有黄金的地区。 enter image description here 然后老师可以通过按图片上的模式答案来选择正确答案(B和E区)。 enter image description here 问题是:
1.作为老师,如何通过触摸图片来进行模式答案,并将什么值存储到数据库中?
2.作为学生,学生如何按下正确答案?
有人能提供建议或帮助我吗?
我是Android的新手。
谢谢!
1个回答

6

您应该使用两种不同的图像。第一张是原始图片。第二张是“地图”图片。地图图片包含不同颜色区域。 “地图”图片必须以无损压缩方式保存到文件中(即png格式)。 原始图片在ImageView中显示。“地图”图片必须解码为Bitmap。

 final ImageView imageView = ...; //TODO: bind imageView
 imageView.setImageResource(R.drawable.original_image);
 final Bitmap map = ...; //TODO: load map bitmap
 imageView.setOnTouchListener((v, event) -> {
     final int x = event.getX();
     final int y = event.getY();
     final float scale = ...//TODO calc image scale;
     final int realX = (int) (x * scale);
     final int realY = (int) (y * scale);
     final int color = map.getPixel(realX, realY);
     if (color == Color.RED) {
         //Correct answer!
     } else {
        //something else
     }
});

地图图片 抱歉我的英语不好。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接