使用PartialCurl模型转换时,视图会调整大小

时间:2010-10-22 19:28:47

标签: uiviewcontroller presentmodalviewcontroller viewwillappear

好的,所以我正在尝试重新创建局部折叠动画,就像在iphone上的标准谷歌地图应用程序中,底部的工具栏保持原样,但它上面的视图会卷曲等等。这是一些图像: http://i.stack.imgur.com/MjTx6.png

(不要因为某种原因让我加入超链接< _<)

http:// i.imgur.com/lc9ig.png http:// i.imgur.com/hqMlN.png

如您所见,白色视图的大小正确(320x416,点:(0,0)),然后向上翻转。工具栏保持原样。当焦点返回到白色视图时,它会自行调整大小(320x460,指向:(0,-22))。

我已将viewWillAppear,viewWillDissapear,viewDidAppear和viewDidDissapear添加到白色视图类中,并且这些方法都没有被调用(这很奇怪,因为我认为在首次初始化视图时会调用出现的那些)。

这是我初始化白色视图的地方:

- (void)viewDidLoad {
    [super viewDidLoad];
 mapController = [[MapViewController alloc] init]; 
 mapController.modalPresentationStyle = UIModalPresentationFullScreen;
 [self.view addSubview:mapController.view];
}

这是当你点击卷曲按钮时会发生的事情:

- (IBAction)curlPage:(id)sender {
 SettingsViewController *settingsController = [[[SettingsViewController alloc] init] autorelease];
 settingsController.modalTransitionStyle = UIModalTransitionStylePartialCurl;
 [mapController presentModalViewController:settingsController animated:YES];
}

所以我猜我的问题是:当控件返回到白色视图(mapController)时,我可以调用哪些方法调用视图,将视图调整回我想要的大小,或者有什么方法可以阻止它从调整自身。

由于

1 个答案:

答案 0 :(得分:0)

好吧,我最终找到了答案。我不确定为什么要调整大小,但在viewWillDissapear中手动设置框架似乎可以解决问题。