2015-02-04 11 views
5

Evito di utilizzare completamente NIB. Sto riscontrando problemi su iOS 7.1, ma non su iOS 8.x.No NIBs, UIWindow Not Filling Screen, iOS 7

iOS 7 vs iOS 8

iOS 7iOS 8

Il codice simile a questo nel UIResponder <UIApplicationDelegate>

- (void) setupViewController { 
    CGRect frame = UIScreen.mainScreen.bounds; 
    self.window = [[UIWindow alloc] initWithFrame:frame]; 
    self.window.backgroundColor = UIColor.whiteColor; // viewController's view is green 
    ViewController *viewController = [[ViewController alloc] init]; 
    UIView *view = [[UIView alloc] initWithFrame:self.window.bounds]; 
    viewController.view = view; 
    self.window.rootViewController = viewController; 
    [self.window makeKeyAndVisible]; 
} 

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 
    [self setupViewController]; 
    return YES; 
} 

Ho anche provato alcuni metodi che si occupano di iOS 8, ma anche le impostazioni UIWindowframe a 5000, 5000 producono gli stessi risultati.

[Ho visto un certo numero di questioni connesse e provato i suggerimenti, ma senza alcun risultato, tra cui lanciando i limiti se si tratta di iOS 8, ecc ecc]

risposta

11

Il problema è che si don' t avere un'immagine di lancio per lo schermo da 4 pollici, quindi l'iPhone 5s sta trattando questa app come un'app da 3,5 pollici (iPhone 4) e la letterboxing.

+1

Le immagini di avvio funzionano in modo diverso su iOS 7 e iOS 8, e questo è il problema. Devi soddisfare le regole per entrambi. – matt

+1

Pertanto, come suggerito, il passaggio alla Sorgente delle immagini di avvio in un "Catalogo delle risorse" ha risolto il problema. Tutte le immagini di lancio sono vuote, ma funziona comunque. Grazie per tutto quello che fai, amico, è un grande aiuto! –

Problemi correlati