gpt4 book ai didi

java - 选择 ImageView 中的内容 - Android

转载 作者:行者123 更新时间:2023-12-01 15:18:27 24 4
gpt4 key购买 nike

我有一个包含 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/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com