Chcę pokazać 1 lub 2 kontrolery UIView w trybie poziomym, podczas gdy inne w pionie. W tym celu zaimplementowałem tę funkcję w AppDelegate.Obsługa iOS9InterfaceOrientationsForWindow przestaje być wywoływana
-(UIInterfaceOrientationMask)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window
{
return self.orientation;
}
gdzie AppDelegate.h, orientacja:
@property (nonatomic, assign) UIInterfaceOrientationMask orientation;
W UIViewController (s), gdzie potrzeba w orientacji poziomej. I Umieść ten kod
-(void)viewWillAppear:(BOOL)animated
{
self.appDelegate.orientation = UIInterfaceOrientationMaskLandscape;
}
i
-(void)viewWillDisappear:(BOOL)animated
{
self.appDelegate.orientation = UIInterfaceOrientationMaskPortrait;
}
Jednak, gdy idę do 'LandscapeViewController' to działa OK, wracam, to działa ok, ja znowu iść do 'LandscapeViewController' jest ok, a kiedy wrócę, metoda supportedInterfaceOrientationsForWindow przestanie być wywoływana. Jakiś powód? czy robię coś dziwnego?
tak używam umieszczenie zakładek. – Haris