타이머 응용 프로그램을 만들고 타이머가 끝나면 (초가 0에 도달) 사용자가 장치의 단추를 클릭 할 때까지 시스템 사운드가 계속 재생되도록하려고합니다. .UIAlertController 신속한 시스템 사운드 관리
내 버튼은 화면에 표시되며 집 전화/볼륨/벨소리 버튼 e.t.c와 비슷합니다. 전화를받을 때 휴대 전화 벨소리가 들리면 비슷합니다.
나는 현재이 코드를 위해 설정 한 UIAlertController
let timerFinished = UIAlertController(title: "Timer Up", message: nil, preferredStyle: UIAlertControllerStyle.alert)
timerFinished.addAction(UIAlertAction(title: "OK", style: .cancel, handler: { (action: UIAlertAction!) in
}))
present(timerFinished, animated: true, completion: nil)
timerFinished.view.superview?.isUserInteractionEnabled = true timerFinished.view.superview?.addGestureRecognizer(UITapGestureRecognizer(target: self, action: #selector(self.alertClose)))
및
본질 그래서@objc func alertClose(gesture: UITapGestureRecognizer) {
self.dismiss(animated: true, completion: nil)
}.
, 내 질문은 :
1) 물리적 버튼을 사용하는 것이 가능 시스템 소리를 비활성화하는 동작을 실행 하시겠습니까? - 그렇다면 어떻게?
2) 조치가 실행되면 시스템 사운드를 사용 불가능하게 설정하려면 어떻게해야합니까? - 당신은 무언가 같이 말한다 while 루프를 설정하는 것입니다 :
while playSystemSound == true {
AudioServicesPlaySystemSound(SystemSoundID(THIS IS WHERE ID WOULD GO))
}
과의 코드를 실행합니다 (경우 alertClose(), OK 버튼 및 물리적 장치 버튼의 동작에서
playSystemSound = false
을 가능한).
듣고 싶지는 않지만 다음과 같이 할 수 있다고 생각하지 않습니다. https://stackoverflow.com/questions/7643942/is-it-possible-to-use-iphones-volume-control-buttons -for-some-other-purpose – BHendricks
그래, BHendricks는 그것이 불가능하다는 것을 알고 많은 시간을 절약 할 수 있기 때문에 나를 알려 주셔서 감사합니다. –