Ho creato una semplice app per iPhone con due file .xib. Nella delegato applicazione a applicazione ha finito di lancio visualizzo il primo file .xib chiamando:Non sono sicuro del motivo per cui UIView viene spostato di circa 10px
[window addSubview:myView];
e io faccio lo stesso su un IBAction per un UIButton per modificare la visualizzazione a myView2.
Quello che sto trovando è che c'è una barra bianca di circa 10 pixel quando eseguo l'app, per entrambe le viste. Inoltre noto che i pulsanti sono sfalsati di 10 pixel (circa). Quindi ho l'impressione che la vista venga visualizzata da 10 pixel fuori dallo schermo e finisca in breve.
Qualche idea del motivo per cui ciò potrebbe accadere, come posso risolverlo o come posso eseguire il debugging di più su cosa sta succedendo? Ho controllato i miei file .xib e stanno consumando l'intera altezza del dispositivo (cioè senza barre bianche), quindi questo sembra essere un problema all'interno di XCode.
EDIT: Ho ristretto il problema un po '. Sto usando due metodi per caricare la sottoview. Quando carico la prima vista all'interno di applicationDidFinishLaunching
, tutto va bene. Tuttavia, se sostituisco i due messaggi a window
con il metodo [self originalView]
, tutto diventa un po 'torbido.
- (void)applicationDidFinishLaunching:(UIApplication *)application {
//[self originalView]; <- I want to use this instead of the following two lines
// Override point for customization after app launch
[window addSubview:viewController.view];
[window makeKeyAndVisible];
}
-(void)endView{
endV = [[EndViewController alloc] initWithNibName:@"EndView" bundle:nil];
[window removeFromSuperview];
[window addSubview:endV.view];
}
-(void)originalView{
viewController = [[MyAppViewController alloc] init];
[window removeFromSuperview];
[window addSubview:viewController.view];
}
Da quello che posso vedere, sto sempre chiamando le stesse linee di codice, non importa se si è all'interno della applicationDidFinishLaunching
o in [self originalView]
ma sembra window
si sta rivelando un oggetto diverso.
Tutti gli esempi che ho visto usano UINavigationController per mostrare una gerarchia di liste, è questo per cui è usato solo? Oppure posso usarlo per controllare quali viste sono visualizzate, anche se non hanno bisogno di una barra di navigazione ecc.? –