0

好的,所以我正在尝试重新创建部分折叠动画,就像在 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];
}

这就是当你按下 curl 按钮时会发生的情况:

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

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

谢谢

4

1 回答 1

0

好吧,我最终弄清楚了这个问题的答案。我不确定为什么要调整它的大小,但是手动设置框架viewWillDissapear似乎可以解决问题。

于 2011-04-19T13:23:27.810 回答