SwiftUI tvOS невидимая кнопка - PullRequest
       27

SwiftUI tvOS невидимая кнопка

0 голосов
/ 14 апреля 2020

Используя SwiftUI и tvOS, как я могу создать нажимаемую кнопку, которая является основным (первым) фокусом на экране, который невидим? Так что, если пользователь просто нажимает кнопку основного пульта дистанционного управления Apple Tv, он нажимает кнопку (выполняет действие)?

У меня есть приложение tvOS, которое я портирую на SwiftUI. Ранее в UIKit у меня был в основном пустой экран с изображением (или словом). При нажатии на пульте он перейдет к следующему изображению. Для этого я использовал невидимую кликабельную кнопку, расположенную в верхней части экрана.

В SwiftUI я использовал ZStack, поместил кнопку спереди и установил непрозрачность 0.0. Похоже, я не могу заставить движок фокусировки по умолчанию нажимать на эту кнопку, если я не придаю ей немного прозрачности (0.1). Если я сделаю кнопку .hidden или установлю непрозрачность на 0.0, механизм фокуса не позволит ей кликать.

По умолчанию SwiftUI tvOS дает кнопке небольшой цвет фона, а при фокусировке светлый цвет с тенью. Я просто хотел бы, чтобы эта кнопка была невидимой. Или использование кнопки - не лучший подход, и я могу просто прослушать щелчок на пульте?

Это должно быть распространенным случаем использования. Учитывая простоту взаимодействия с tvOS, должен быть простой способ реагирования на нажатие основной кнопки.

...