Kopie einer View

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Kopie einer View

    Hallo,

    ich teste gerade mit UIScreen rum und gebe sachen auf externen Bildschirmen aus.

    Wenn ich in einem view Controller self.view an das externe window übergebe. zieht er aus vom ipad raus und schiebt es denn auf den ext. bildschirm, jetzt ist aber der bereich wo self.view war nur noch ein schwarzer hintergrund.

    Wie kann ich das beheben?

    Quellcode

    1. - (void)sendToScreen {
    2. CGSize maxSize;
    3. if([[UIScreen screens]count] > 1) {
    4. // There is a external display.
    5. UIScreenMode *maxScreenMode;
    6. for(int i = 0; i < [[[[UIScreen screens] objectAtIndex:1] availableModes]count]; i++)
    7. {
    8. UIScreenMode *current = [[[[UIScreen screens]objectAtIndex:1]availableModes]objectAtIndex:i];
    9. if(current.size.width > maxSize.width)
    10. {
    11. maxSize = current.size;
    12. maxScreenMode = current;
    13. }
    14. }
    15. UIScreen *external = [[UIScreen screens] objectAtIndex:1];
    16. external.currentMode = maxScreenMode;
    17. window = [[UIWindow alloc]initWithFrame:CGRectMake(0, 0, 768, 1024)];
    18. window.screen = external;
    19. }
    20. UIView *view = [[UIView alloc] initWithFrame:[window frame]];
    21. view.backgroundColor = [UIColor whiteColor];
    22. [view addSubview:self.view];
    23. CGPoint point = CGPointMake(0.0f, 0.0f);
    24. CGSize size = maxSize;
    25. CGRect frame = self.view.frame;
    26. frame.origin = point;
    27. frame.size.width = size.width;
    28. frame.size.height = size.height;
    29. [self.view setFrame:frame];
    30. [self.view setFrame:frame];
    31. [window addSubview:self.view];
    32. [window makeKeyAndVisible];
    33. }
    Alles anzeigen