Come forzare l'orientamento verticale in iOS 7
se la mia applicazione è inizialmente supportata per entrambi gli orientamenti?Come forzare l'orientamento verticale?
risposta
UIViewController *c = [[UIViewController alloc]init];
[self presentViewController:c animated:NO completion:nil];
[self dismissViewControllerAnimated:NO completion:nil];
Questo codice non è conforme allo standard di Apple, non è sicuro ... ma è un buon compromesso. –
Quando utilizziamo questo codice, la nostra app non verrà approvata dalla Apple per la produzione. –
Puoi spiegare perché funziona, per favore? Inoltre, questi metodi sono stati deprecati in iOS 6. È possibile che Apple decida di rimuoverli su iOS 8. Non sarebbe la prima volta che un metodo viene ritirato da Apple e rimosso poco dopo. – rtiago42
Uso approccio seguito: Nella tua app delegato .h
@interface PlayWithWSWithLibAppDelegate : NSObject <UIApplicationDelegate, UITabBarControllerDelegate> {
BOOL flagOrientationAll;
}
@property (assign) BOOL flagOrientationAll;
Add seguente metodo nel file .m delegato app
- (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window{
//NSLog(@"PlayWithWSWithLibAppDelegate -- supportedInterfaceOrientationsForWindow");
if(flagOrientationAll == YES){
return UIInterfaceOrientationMaskPortrait;
} else {
return UIInterfaceOrientationMaskAll;
}
}
Implementare segue a suo avviso, che si vuoi ruotare sia in verticale che in orizzontale sia per il dispositivo iPhone
-(void)viewWillAppear:(BOOL)animated
{
self.tabBarController.delegate = self;
PlayWithWSWithLibAppDelegate *delegate = (PlayWithWSWithLibAppDelegate *) [[UIApplication sharedApplication] delegate];
delegate.flagOrientationAll = YES;
}
}
-(void)viewWillDisappear:(BOOL)animated
{
//NSLog(@"viewWillDisappear -- Start");
PlayWithWSWithLibAppDelegate *delegate = (PlayWithWSWithLibAppDelegate *)[[UIApplication sharedApplication] delegate];
delegate.flagOrientationAll = NO;
}
Ecco il mio thread qualche cosa simile al vostro problema: iOS 7 Interface Orientation
Per l'intera applicazione, aprire il file di progetto, vai alla scheda Generale, modificare le impostazioni:
Or direttamente sul file Info.plist:
se desideri solo su uno specifico controller di vista, ignorare supportedInterfaceOrientations
:
- (NSUInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskPortrait;
}
Si può leggere di più sul secondo metodo nei confronti del funzionario UIViewController documentation. Forse troverai un modo più adatto per il tuo problema specifico.
Semplice e giusto, ma attenzione al - (BOOL) shouldAutorotate method. Non deve essere sovrascritto, o restituisce SÌ, altrimenti non funzionerà. – Moose
#import <objc/message.h>
objc_msgSend([UIDevice currentDevice], @selector(setOrientation:), UIInterfaceOrientationLandscapeRight);//here you may change your desired Orientation
- 1. Come faccio a forzare JScrollPane a scorrere solo in verticale?
- 2. Come forzare layoutsubviews di UIView.
- 3. Come forzare una tabella verticale o limitare le colonne in Hirb?
- 4. Come forzare la barra di scorrimento verticale sempre visibile da AutoScroll in WinForms?
- 5. Come forzare la barra di scorrimento verticale per mostrare se i risultati di AutoCompleteTextView possono scorrere?
- 6. come mettere UISlider verticale?
- 7. come rendere uniformemente verticale
- 8. come forzare https
- 9. QSpacerItem in QFormLayout - verticale Espandi
- 10. Windows Phone Come scorrimento verticale
- 11. Come modificare UISlider in verticale?
- 12. Come posso forzare iOS Safari a ignorare la rotazione EXIF?
- 13. Istogramma verticale
- 14. Come forzare Camelcase con JavaScriptSerializer?
- 15. Come forzare un'interruzione di riga?
- 16. Come forzare l'attivazione del modulo?
- 17. Testo verticale in Dia
- 18. Layout verticale Java?
- 19. modulo html verticale allineato
- 20. JLabel allineamento verticale non funziona come previsto
- 21. Bootstrap ui Angularjs: come componente centrale verticale?
- 22. Bootstrap: come aggiungere offset verticale nelle colonne?
- 23. Come impostare la modalità verticale con libGDX?
- 24. Come impostare solo il riempimento verticale?
- 25. WPF, ottenendo un salto verticale come previsto!
- 26. Come rendere un UISplitViewController in modalità verticale?
- 27. Come si crea una trama verticale numpy?
- 28. Come posso creare un UISlider verticale?
- 29. UIDeviceOrientationFaceUp - come distinguere tra verticale e orizzontale?
- 30. Come disegnare la linea verticale in iReport?
Non è chiaro puoi spiegare di più. È necessaria solo la modalità verticale nell'intera app – morroko
possibile duplicato di [Forza l'orientamento verticale mentre si spinge da Landscape View Controller] (http://stackoverflow.com/questions/14633213/force-portrait-orientation-while-pushing-from-landscape -view-controller) –