내 스토리 보드에 2 개의 UIViewController가 있습니다. 첫 번째 (로컬 뷰 컨트롤러)가 내 ipad 창에 표시됩니다. 그리고 스토리 보드 (외부보기 컨트롤러)에 두 번째가 있습니다스토리 보드에서 뷰로드 UIViewController 외부 디스플레이
두 번째 UIViewController (외부보기 컨트롤러)의보기와 내용을 외부 디스플레이로 보내도록 만든 다른 창으로 보내려고합니다.
외부 디스플레이 (UIScreen = 1)에 UIwindow를 만들어 보내고 뷰를 추가 한 다음 레이블과 같은 것들을 잘 추가 할 수 있습니다. (두 번째 디스플레이에 표시)
외부 뷰 디스플레이 용으로 만든 Windows에 UIviewcontroller "View"(모든 내용 포함)를 보내려는 경우 ... 표시되지 않습니다.
이 작업을 수행 할 수 있습니까? 울부 짖는 코드에서
봐 :
//this code is at my main view controller
#import "ASHExternalViewController.h" //for External View Controller
if ([[UIScreen screens] count] > 1)
{
// Associate the window with the second screen.
// The main screen is always at index 0.
UIScreen* secondScreen = [[UIScreen screens] objectAtIndex:1];
CGRect screenBounds = secondScreen.bounds;
//Alloc external window
UIWindow *externalWindow = [[UIWindow alloc] initWithFrame:screenBounds];
externalWindow.screen = secondScreen;
// Add a white background View to the window
UIView* whiteField = [[UIView alloc] initWithFrame:screenBounds];
whiteField.backgroundColor = [UIColor whiteColor];
[externalWindow addSubview:whiteField];
//up to this point all OK, I can see the white background view in the external display
//
//Add uiviewcontoller at storyborad to external window
ASHExternalViewController *_externalView = [[ASHExternalViewController alloc] initWithNibName:@"ASHExternalViewController" bundle:nil];
[whiteField addSubview: externalView.view];
//does no add the view in the external UIViewController in story board
// Go ahead and show the window.
externalWindow.hidden = NO;
}
의견을 보내 주셔서 감사합니다.하지만 해결책이 아닙니다. '[whiteField addSubview : externalView.view];를 사용했습니다. 하지만 그 전에 나는 'UIStoryboard * storyboard = self.storyboard; svc = [스토리 보드 instantiateViewControllerWithIdentifier : @ "myExternalUIViewControllerID"]; ' –
그게 내 대답의 마지막 줄을 언급 한 것입니다. 또한 이것은 여전히 viewController의 계층 구조를 창에 추가하는 올바른 방법이 아니라는 것을 나타냅니다. –