2013-09-06 2 views
1

이것은 실제로 시작 질문이지만 문제 해결을위한 좋은 방법을 찾지 못했습니다.iOS 통신 ViewController -> Model

문제점 : 내 ViewController에서 재생할 사운드와 변경해야 할 사운드를 "모델"에 알려주고 싶습니다.

내가 무엇을 가지고 : 내가 만든 및 NSObject의 단지 서브 클래스 AudioPlayer 클래스입니다. 그것은 내 audioSession 및 handless 내 애플 리케이션 사운드 진행을 설정합니다. 이제 기본적으로 내 ViewController에서 AudioPlayer 클래스로 정수를 보내고 해당 클래스가 플레이어의 새로운 사운드 경로로 바꿀 수있는 함수를 수행하도록 할 수 있습니다. 플레이어는 AudiPlayer 클래스에 속하는 객체이며 전역/공유 함수에서 호출 할 수 없습니다.

내가 시도한 것 : 클래스 변수를 호출하는 문제를 해결하지 못하는 ViewController에서 전역 변수를 설정하는 것. 실제로 전역 부울이 TRUE로 설정되어 있고 사운드 스왑을 수행했는지를 정기적으로 확인하기 위해 클래스 내부에서 함수를 호출 한 반복 타이머를 사용하여이 문제를 해결했습니다. 그러나이 매우 지저분한 것을 발견했습니다. 최적의 방법?

내가 .. 그것이 내가 또한 대표에서 찾고 있었어요이 문제

나를 돕고하지 않는 것이 (내 수업이 지금 인) 싱글을 시도하지만, 그들을 사용하고 난 항상 내 audioplayer을 엉망 결국 델리게이트 (나는 생각한다!), audioplayer는 아무것도 연주하지 못하게 끝나고 (그러나 각 명령에서 잘 돌아가는 것처럼 보인다). 플레이어 설정 디버깅 표시 : audioplayer 오류 : 알 수없는 클래스.

이 문제에 대한 제안이나 좋은 답변을 주시면 감사하겠습니다. 감사합니다.

답변

1

모델이 "재생"해서는 안되며, 실제로는 아무 것도하지 마십시오. 단지 데이터 일뿐입니다.
그래서 모델을 재생할 것을 알려주지 않고 viewcontroller는 모델에 재생해야 할 것을 물어보고 스스로 재생해야합니다.

AudioPlayer는 (오디오를 재생할 때) '모델'클래스 이상이지만 수업에 알맞은 의견을 제시하기 위해 코드를 분명히 볼 필요가 있습니다.

+0

나는 본다. 이 앱은 간단한 이야기 ​​책이지만 꽤 많은 ViewController가 있습니다. 각 ViewController를 구현하고 audioPlayer를 설정해야합니까? 그건 꽤 비 최적의 설정 아닌가요? – Himmi

+0

필연적으로, 클래스를 재사용하여 오디오를 재생할 수 있습니다. – Pieter

+0

감사합니다. 나는 방금 분명한 해결책을 제시하고 있습니다. 나는 나 자신을 조직하려고 노력할 것이다;). – Himmi

관련 문제