2014-01-22 3 views
0

iOS 앱에 대한 화면 자습서를 만들었습니다.UIPageViewController에서 관리하는보기 컨트롤러의 배경색을 변경하려면 어떻게해야합니까?

이렇게하려면 3 개의 viewController를 관리하는 UIPageViewController를 사용하고 있습니다. 내가 screenTutorial1하거나 결코 호출되지됩니다 screenTutorial2에 대한 배경을 변경에 도착했을 때

- (void)setupContentViews{ 
UIViewController *screenTutorial1 = [[UIViewController alloc] initWithNibName:@"ScreenTutorial_1ViewController" bundle:nil]; 
UIViewController *screenTutorial2 = [[UIViewController alloc] initWithNibName:@"ScreenTutorial_2ViewController" bundle:nil]; 
tutorialPages = @[screenTutorial1, screenTutorial2]; 

}

모든 것을 제외하고 잘 작동합니다. 이것에 대한 이유는 무엇입니까? 해결책이 있습니까?

몇 가지 실험을 한 후 UIPageViewController (아래 참조)에 코드를 추가하면 속성이 설정됩니다. 그러나 View Controller에 사용자 정의 메서드를 추가해야하는 경우 어떻게해야합니까? UIPageViewController에서 모든 작업을 수행해야합니까?

enter image description here

답변

1

문제는 그래서 당신이 backgroundColor을 변경할 수 없습니다 전무 그 시점에서 view는 것입니다.

UIViewController을 서브 클래스 화하고 backgroundColorviewDidLoad에 설정해야합니다. 나는 그것을 설치 얼마나 정확히

- (void)setupContentViews 
{ 
    ScreenTutorial_1ViewController *screenTutorial1 = [[ScreenTutorial_1ViewController alloc] initWithNibName:@"ScreenTutorial_1ViewController" bundle:nil]; 
    UIViewController *screenTutorial2 = [[UIViewController alloc] initWithNibName:@"ScreenTutorial_2ViewController" bundle:nil]; 
    tutorialPages = @[screenTutorial1, screenTutorial2]; 
} 
+0

:

YourUIViewControllerSubclass *screenTutorial1 = [[YourUIViewControllerSubclass alloc] initWithNimbName:@"ScreenTutorial_1ViewController" bunble:nil]; 

업데이트

업데이트 같은 당신의 방법 setupContentViews : 그리고 그 후이 같은 tutorialPages 바르의 뷰 컨트롤러를 초기화한다 . – user3071579

+0

다음은 .h 파일에있는 내용입니다. – user3071579

+0

@interface ScreenTutorial_1ViewController : UIViewController – user3071579

관련 문제