iPad / iPhone Master-Detail app. iOS 9.0, Xcode 7.0

Rotating the iPad to Portrait my AppDelegate will receive a 
UIDeviceOrientationDidChangeNotification:

12:23:01.182 -[AppDelegate iPadHasTurned:] 
        and does:
        UISplitViewControllerDisplayMode newMode = PrimaryOverlay
        splitViewController.preferredDisplayMode = newMode;
        [ self performSelector: @selector(delayedSetMode:) withObject: 
@(newMode) afterDelay: 0 ];      //      see below
                        
12:23:01.183    -[AppDelegate splitViewController:willChangeToDisplayMode:] 
PrimaryOverlay 
        good, that's what I just have told it to do. 
        
12:23:01.196    -[MasterViewController viewDidAppear:]   
12:23:01.198 -[AppDelegate iPadHasTurned:] done

So far so good.

But now the pesky SplitViewController decides it knows best, and does:

12:23:01.199 -[AppDelegate splitViewController:willChangeToDisplayMode:] 
AllVisible     

here my delayedSetMode will come to the rescue:
12:23:01.212 -[AppDelegate delayedSetMode:] displayMode → PrimaryOverlay        
        
        does:   splitViewController.preferredDisplayMode = newMode;
12:23:01.223    -[MasterViewController viewDidAppear:]   
12:23:01.224 -[AppDelegate delayedSetMode:] done 

Is there a better way than this hack with delayedSetMode ?

Gerriet.


_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to