Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>From Apple's iOS 5.1 SDK release notes:</p> <blockquote> <p>In 5.1 the UISplitViewController class adopts the sliding presentation style when presenting the left view (previously only seen in Mail). This style is used when presentation is initiated either by the existing bar button item provided by the delegate methods or by a swipe gesture within the right view. No additional API adoption is required to obtain this behavior, and all existing API, including that of the UIPopoverController instance provided by the delegate, will continue to work as before. If the gesture cannot be supported in your app, set the presentsWithGesture property of your split view controller to NO to disable the gesture. However, disabling the gesture is discouraged because its use preserves a consistent user experience across all applications.</p> </blockquote> <p><a href="https://developer.apple.com/library/ios/#releasenotes/General/RN-iOSSDK-5_1/_index.html#//apple_ref/doc/uid/TP40011329" rel="nofollow noreferrer">Here</a> (login required).</p> <p><strong>UPDATE:</strong></p> <p>From what I understand on the above, we can kiss the automatic popover appearance of the master controller goodbye in iOS 5.1.</p> <p>The only way I see is possible to keep the "old" appearance, is by implementing our own <code>UIPopoverController</code> and taking advantage of the <code>ShouldHideViewController</code> delegate method. Thankfully with MonoTouch, we have that method available as a property in the <code>UISplitViewController</code> class, making things a bit simpler. </p> <p>I do get a strange behavior though. With iOS SDK 5.1 on my Mac and iOS 5.1 on my iPad; on the device, I get the "sliding" appearance, while on the simulator I get the "old", popover appearance. This is with MonoTouch 5.2.4, which is the latest stable version. Also, it does not contain a <code>PresentsWithGesture</code> property. I tried setting its value to false through MonoTouch.ObjCRuntime messaging, but no luck. The selector keeps returning true. So I cannot deactivate the swipe gesture.</p> <p>Even tried creating my own <code>UIPopoverController</code> and assigning it as the master in the split controller to see what happens. Doesn't work because <code>UIPopoverController</code> is not a <code>UIViewController</code>...</p> <p>Some useful info in <a href="https://stackoverflow.com/questions/9612620/compiling-against-5-1-sdk-forces-new-uipopovercontroller-slide-in-presentation">this</a> question, for ObjC.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload