Непрозрачность кнопки влияет на ее «кликабельность».

Я столкнулся с очень странной проблемой. У меня есть приложение SwiftUI (iOS), в котором у меня есть полноэкранный режим.ZStack: внутри, как "нижний слой", у меня полноэкранный режимMap, а сверху у меня есть кнопка (она естьLocationButton- но это не имеет особого значения, поведение такое же, как и у обычногоButtonслишком).

Моя кнопка имеет модификатор непрозрачности, который устанавливает для нее значение0.5, и соответствующее действие. На этом этапе всё работает: могу прокрутить карту, могу нажать кнопку — и действие выполнится.

Однако как только я добавил на карту - кнопка начала вести себя странно. На него передавались лишь несколько кликов. Это почти как если бы мне пришлось нажать несколько определенных пикселей кнопки, чтобы выполнить ее действие.

Я потратил пару часов на эксперименты с макетом и разными модификаторами - ничего не помогло. Например, я попробовал добавить.contentShape(Rectangle())на кнопку - не повезло. Но, в конце концов, я заметил интересный эффект: если убрать непрозрачность с кнопки - она ​​снова работает. Потом попробовал промежуточные значения непрозрачности - кажется, чем меньше непрозрачность (чем прозрачнее кнопка), тем сложнее по ней нажать (хотя размер не меняется).

Может кто-нибудь объяснить мне, почему непрозрачность в этом конкретном макете влияет на «кликабельность» кнопки? Потому что это не влияет на это, когда у меня нет.onTapGestureна моей карте - так что я думаю, это должно быть как-то связано...

0 ответов

Другие вопросы по тегам