Я пытаюсь заставить iPhone, смоделированный xcode, воспроизводить аудиофайл wav, когда нажата одна из 7 кнопок интерфейса UI.Код следующий:
import UIKit
import AudioToolbox
class ViewController: UIViewController{
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func notePressed(_ sender: UIButton) { //7 buttons are associated with this IBAction, tagged from 1-7
if let soundURL = Bundle.main.url(forResource: "note1", withExtension: "wav") {
var mySound: SystemSoundID = 0
AudioServicesCreateSystemSoundID(soundURL as CFURL, &mySound)
//play
AudioServicesPlaySystemSound(mySound);
print(sender.tag) //to print the button tag and make sure the IBAction is working
}
else{
print("no note")
}
}
}
Когда я его запускаю, я не вижу ошибок.Кроме того, когда я нажимаю одну из 7 кнопок, тег кнопки действительно печатается.Условие no note из оператора else никогда не печатается.
Здесь есть изображение смоделированного iPhone под управлением здесь .На рисунке каждый цветной прямоугольник представляет собой одну из 7 кнопок.Они были нажаты в последовательности, так что теги можно увидеть напечатанными на выходе.Кроме того, файл «note1.wav» можно увидеть в области навигации, в папке «Sound Files».Если я нажму на note1.wav на панели навигации, я могу слышать это очень хорошо.
Вот характеристики Mac:
- Двухъядерный процессор
- 8 ГБ ОЗУ
- macOS High Sierra 10.13.6
Кроме того, я использую этот Mac через подключение к удаленному рабочему столу;этот компьютер от Macincloud, удаленной службы проката Mac).Я понятия не имею, может ли это что-то изменить, но, как я уже говорил, я могу отлично слышать аудиофайлы с Mac, если они воспроизводятся из симуляции устройства xcode.
Кто-нибудь знает, как это сделать?решить это?