자신을 발견 한 상황은 다음과 같습니다.보기 컨트롤러를 서로 연결하거나 한 번만 초기화하십시오.
AppDelegate에서 배경을 입력 할 때 SKView를 일시 중지 할 수 있도록 나중에보기 컨트롤러에서 만들고있는 SKView에 액세스 할 수 있어야합니다. 내가 할 수있는 것으로 알고있는 유일한 방법은 AppDelegate 내에서 SKView를 만든 다음 나중에 속성으로 사용하는보기 컨트롤러 내에서 설정하는 것입니다. 단점은 그것이 처음 생성 될 때까지 아무 것도 설정하지 않은 뷰가 존재하지 않는다는 것입니다. 그래서 결과적으로 저는 다음과 같은 일을합니다. SceneViewController 내
@property (nonatomic, strong) SKView *skView;
.
.
.
self.skView = [[SKView alloc] init];
SceneViewController *svc = [[SceneViewController alloc] initWithNibName:nil bundle:nil];
[svc setSkview:self.skView];
내가있는 한
@property (nonatomic, strong) IBOutlet SKView *skview;
질문이 정말 함께 IBOutlet입니다 속성에 모두 강한 설정을해야합니까? 또한 내가하는 일을하는 것보다 더 좋은 방법이 있습니다.
같은 방식으로 SceneViewController를 다른 뷰 컨트롤러에 전달하여 적절한 시점에 뷰를 표시 할 수 있도록 참조를 얻을 수도 있습니다. 위의 문제에 대한 해답도 도움이 될 것입니다.