2011-11-23 16 views
3

我有一個主視圖。 從那個主視圖我顯示一個模態視圖(MV1)。 MV1顯示另一個模態視圖(MV2)。目前模態和解散視圖控制器無法正常工作

* MAINVIEW編碼: -

MV1 *MV1obj = [[MV1 alloc]initWithNibName:@"MV1" bundle:nil]; 
MV1obj.modalPresentationStyle=UIModalPresentationPageSheet; 
[self presentModalViewController:MV1obj animated:YES]; 
MV1obj.view.superview.frame = CGRectMake(0, 0,730,620); 
MV1obj.view.superview.center = self.view.center; 

當我點擊的按鈕MAINVIEW,MV1模型視圖是開放的,其寬度和高度爲730和620 MV1模型視圖包含一個的ImageButton。當我點擊這個按鈕時,MV2模型視圖打開並在模型視圖Mv2中顯示全屏圖像。

* MV1類編碼: -

MV2 *MV2obj = [[MV2 alloc]initWithNibName:@"MV2" bundle:nil]; 
MV2obj.modalPresentationStyle=UIModalPresentationFullScreen; 
[self presentModalViewController:MV2obj animated:YES]; 

但是,當我dissmiss模型視圖Mv2時MV1模型視圖以全屏幕顯示。但我需要在730寬度和620高度顯示Mv1模型視圖。 任何人都可以告訴我代碼有什麼問題嗎?

謝謝。

+0

刪除此行MV2obj.modalPresentationStyle = UIModalPresentationFullScreen; 然後檢查出來。 – Gypsa

回答

2

通過明確設置中心和框架再次解決。寫幾行代碼寫進MV2類當您關閉self

-(IBAction)logoClick:(UIButton*)sender{ 
    [self dismissModalViewControllerAnimated:YES]; 

    UIViewController *vc = [self parentViewController]; // it's your MV1 instance 
    vc.view.superview.frame = CGRectMake(0, 0, 730, 620); 
    vc.view.superview.center = CGPointMake(1024/2, 768/2); 
}