Well, I decided that I needed to create a dummy view controller, otherwise the dash would not slide.
I am creating a class called Sys_Mail , which is @interface Sys_Mail : UIViewController <MFMailComposeViewControllerDelegate>
and then I basically create a view controller for the root view. I struggled with the portrait / landscape for several hours, but decided that if you attach the view controller to the top level view (which contains my landscape transformation), then it slides in the form of a landscape window. There is only one visual glitch, the parent window moves for several seconds while the new window slides, this is a side effect of the landscape transformation doing odd things to parents ....
To get the landscape orientation in a sliding window, you must declare a method in the Sys_Mail class that processes the autorotation message:
//======================= // shouldAutorotateToInterfaceOrientation //======================= // see if this ever gets called for the view controller -(BOOL) shouldAutorotateToInterfaceOrientation: (UIInterfaceOrientation) interfaceOrientation { if (TRACE) printf ("shouldAutorotateToInterfaceOrientation\n"); return (interfaceOrientation == UIInterfaceOrientationLandscapeRight); // or whatever orientation is needed }
gMasterView variable refers to my top-level view (which has a landscape transform and is attached to the window). Subviews don't seem to work, viewing controllers is terrible. THEY ARE MORE DESIGN CARPATHIANS. I need full control over my views, not some kind of Microsoft MFC.
Sys_Mail* g_root_vc; if (g_root_vc == nil) {
therefore this
edward
source share