I have a root UIViewController that I am adding other UIViewController\'s as subviews. Currently each of the subviews are too low down (covering up my custom build tabbar).
First, ensure that your frame is actually not changing size. Likely it /is/ changing size, but you are expecting it to clip its contents; this behavior is not enabled by default on a UIView, and would need to be set via:
[[self view] setClipsToBounds:YES];
To double check and ensure that your frame is / is not changing size after setting the new frame, try logging this:
NSLog(@"New frame is: %@", NSStringFromCGRect([[self view] frame]));
or simply setting a breakpoint after the change and inspecting the value in your debugger.
@Nic i think when you are adding that other view, at that time you should define the other views frame size like this:
Someviewcontroller *c = initWithNibName
c.view.frame = CGRectMake(0, 0, 200, 200);
[self addSubView:c];
i dont know if this will work but it is something like this.
Then there's always...
// Screen, less StatusBar
CGRect l_RectFrame = [UIScreen mainScreen].applicationFrame;
OR...
// Entire Screen
CGRect l_RectFrame = [UIScreen mainScreen].bounds;
MyView *l_aView = [[MyView alloc] initWithFrame:l_RectFrame];
...