繁体   English   中英

如何在ImageView中使用的图像中定义可点击区域

[英]How to define a clickable area in an image used in ImageView

有没有一种方法可以在图像中定义可点击区域? 与HTML中的地图区域标签等效或相似吗? 还是有一种标准的方式来做这种事情?

一种可能的方法

1)使用(以像素为单位)获取图像视图的宽度和高度

2)获取图像视图的坐标(这是图像视图的左上角)

3)创建一个触摸监听器,并记录用户触摸的坐标

4)如果用户的触摸坐标落在图像上,请执行任何操作

如果只想根据用户触摸的位置执行某些操作,则必须使用图像视图的坐标以及图像视图的宽度和高度来计算这些区域的坐标。

我认为可能没有标准的方法,但是可以通过在图像视图上放置透明的VIEW来实现。 将点击监听器设置为该视图,并使imageview可点击为false。

当我必须做类似的事情时,我使用一个包含视图。

至于布局,包含视图将被访问,我将使用FrameLayout作为根。

它的子级是我要描绘的ImageView ,以及它的LinearLayout前面,在要用户选择的位置包含Button。

然后在代码中,我将侦听器设置为这些按钮。

最后,我将设置按钮,以使背景透明且文本不可用。

例如,在我正在从事的项目中,我有一个以海洋为背景的ImageView。

在视图的前面,我有一个LinearLayout,其中的ImageViews较小,带有岛的图像。

我在岛上放置了侦听器,以查看何时单击它们以打开新活动。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM