incubator-callback-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kevin Hawkins (JIRA)" <>
Subject [jira] [Commented] (CB-1204) CDVViewController-loaded view doesn't respect applicationFrame
Date Tue, 07 Aug 2012 17:14:10 GMT


Kevin Hawkins commented on CB-1204:

Another question: can I read CB-93's current Resolved status to mean that Cordova 2.0 will
only support iOS 4.2 and greater?  If so, I'll tailor my changes to simply use the approach
of setting the window's rootViewController, and remove the code that add's the vc's view to
the window's subviews.
> CDVViewController-loaded view doesn't respect applicationFrame
> --------------------------------------------------------------
>                 Key: CB-1204
>                 URL:
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: iOS
>    Affects Versions: 1.8.1, 1.9.0, 2.0.0
>         Environment: Mac OS X Lion, Xcode 4.4, iOS SDK 5.1.
>            Reporter: Kevin Hawkins
>            Assignee: Shazron Abdullah
>   Original Estimate: 1h
>  Remaining Estimate: 1h
> If you take the Cordova template app and, instead of using:
> [self.window addSubview:self.viewController.view];
> to display the view in the AppDelegate, you use the more recommended (for iOS >= 4.0)
method of:
> self.window.rootViewController = self.viewController;
> to display the view, there is a positioning difference for the web view, due to the fact
that, in the latter case, self.viewController.view's frame is not being set at the appropriate
time.  This sets the view's frame to the entire height and width of the device.  I.e. it doesn't
account for the space taken up by the status bar.  This can be easily verified by making an
index.html page with an h1 header at the top, and toggling which code line you use to display
the view, from the given lines above.
> The solution to this is to set the view's frame in viewWillAppear in CDVViewController:
> - (void)viewWillAppear:(BOOL)animated
> {
>     self.view.frame = [[UIScreen mainScreen] applicationFrame];
> }

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


View raw message