java - 选择 ImageView 中的内容 - Android

标签 java android android-imageview

我有一个包含 ImageViewActivity,我希望允许用户通过触摸(或鼠标单击)功能来选择其部分内容。

我想编写一个能够实现两件事的程序:

  1. 在图像的选定部分上绘制突出显示的窗口
  2. 返回一个包含所选(突出显示)像素坐标的对象。

为了更好地理解,您可以查看我创建的小模型:

enter image description here

用户应该触摸屏幕上图像的某些部分,并且该部分应该突出显示。当按下后退按钮时,我想通过 Java 获取突出显示的像素的坐标。

你能帮我了解该怎么做吗?

我特别想了解以下内容:

  1. 我应该访问图像的像素级信息吗?
  2. 需要哪些类来实现此功能?
  3. 关于伪代码的一些想法?

感谢您的任何帮助!

最佳答案

我将子类化ImageView,然后您可以通过重写onTouchEvent(...)来捕获触摸事件

当您到达 onDraw(...) 方法时,您可以正常调用 super 来绘制图像,然后添加您自己的代码以在顶部绘制突出显示。

编辑

好吧,您可以扩展它并编写自己的类,而不是使用ImageView,该类所要做的就是重写onTouchEvent(...),这样您就知道什么时候 View 正在被触摸,并且可以保存触摸事件在屏幕上的位置。接下来编辑绘图方法:

@Override
protected void onDraw(Canvas canvas) {
    super.onDraw(canvas); // So the image you want is drawn as normal

    myMethodForDrawingAFancyHighlight(Canvas canvas); // add your special effects on top of the image
}

关于java - 选择 ImageView 中的内容 - Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11311337/

相关文章:

java - 使用 Jena 将字符串插入到 SPARQL 查询中

java - 是否可以在同一程序的多个实例的多个线程之间进行通信?

java - 在java中旋转图像

android - 我如何将代码分配给抽屉按钮?

android - ionChange - 仅检测 Ionic 2 中从 View 到模型的变化

android - 为什么第一次点击 ImageView 不工作?

java - Kruskal 与堆或排序算法

java - 在 android 上使用 jackson-dataformat-xml

android - 如何将样式应用于 Android 中的所有 ImageButtons?

java - 一旦我退出应用程序,生成的 QR 图像就会消失