簡體   English   中英

cliptobound(ed)元素的隱形部分下面的元素的可訪問性

[英]Accessibility of elements underneath the invisble part of cliptobound(ed) element

我有一個正方形的MKMapView mainMap ,它的寬度等於iPhone屏幕的寬度。 我使用以下方法使其成為圓形:

mainMap.layer.cornerRadius = mainMap.frame.width/2
mainMap.clipsToBounds = true

現在,我有一個UIButtonmapView下方,並且僅部分可見。

這一切都很好,但是當我點擊按鈕時,點擊被mapView的不可見部分抓住了。

是否需要執行其他步驟以使mapView的不可見部分不干擾用戶界面?

您需要在背景視圖上覆蓋點擊測試( hitTest:withEvent: 您將調用super ,並且大多數時候您將返回它返回的任何內容。 但是,如果它返回地圖視圖,則將根據地圖視圖的框架檢查該點(第一個參數)並確定其是否在圓內-這很容易計算,因為CGPath具有CGPathContainsPoint函數。 如果是,則返回super給您的地圖視圖。 但是,如果不是,則返回nil 現在,觸摸將“掉線”到其背后的任何內容,如果是該按鈕,則該按鈕將受到點擊。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM