У меня есть структура Swift UI под названием MyWatchView с этим стеком.
VStack (alignment: .center)
{
HStack
{
Toggle(isOn: $play)
{
Text("")
}
.padding(.trailing, 30.0)
.hueRotation(Angle.degrees(45))
if play
{
MyWatchView.self.playSound()
}
}
}
Он также имеет @State private var play = false; И функция playSound выглядит следующим образом:
static private func playSound()
{
WKInterfaceDevice.current().play(.failure)
}
Я получаю сообщение об ошибке типа '()', которое не может соответствовать 'View'; только типы struct / enum / class могут соответствовать протоколам. Я думаю, что это, вероятно, то, что я не понимаю в том, как структуры работают в Swift. Я пытаюсь использовать таймер для запуска функции воспроизведения звука. Это мой код в моем классе View Controller из моего iOS приложения раскадровки timer = Timer.scheduledTimer(timeInterval: interval, target: click class, selector: #selector(clickClass.repeatSound), userInfo: clickClass, repeats: switchView.isOn)