[英]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.