0

我試圖顯示一個模態視圖控制器,但保持導航欄顯示在iPad上。我試過不同的表現風格,但沒有工作。是否可以調整大小,或者將它顯示在某個視圖的頂部,而不是整個視圖控制器的上方?模態視圖控制器大小

編輯:代碼添加:

- (void)buttonPressed:(id)sender 
{ 
    RKWebViewController *webViewController = [[RKWebViewController alloc] initWithNibName:nil bundle:nil]; 
    webViewController.request = [NSURLRequest requestWithURL:_link]; 
    webViewController.webView.delegate = self; 
    webViewController.shouldDisplayDoneButton = YES; 
    webViewController.modalPresentationStyle = UIModalPresentationCurrentContext; 
    [self presentModalViewController:webViewController animated:YES]; 
} 
+1

你能添加一些代碼,你試過? – rishi

+0

我只是有一個視圖控制器,它調用一個不同的類,它有一個視圖(或者說,多個視圖堆疊)。然後在'ViewController'中,我只需點擊一下按鈕就可以使用'presentModalViewController'。 – darksky

+0

添加您用於呈現模態視圖的代碼,那裏肯定有問題。你創建了導航堆棧嗎? – rishi

回答

2

使用 -

- (void)buttonPressed:(id)sender 
{ 
    RKWebViewController *webViewController = [[RKWebViewController alloc] initWithNibName:nil bundle:nil]; 
    webViewController.request = [NSURLRequest requestWithURL:_link]; 
    webViewController.webView.delegate = self; 
    webViewController.shouldDisplayDoneButton = YES; 

    UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:webViewController]; 
    [webViewController release]; 

    navController.modalPresentationStyle = UIModalPresentationCurrentContext; 
    [self presentModalViewController:navController animated:YES]; 
    [navController release]; 

}

+0

哦工程!爲什麼這個工作?我做錯了什麼? – darksky

+2

當您從UIViewController的子類中呈現模態視圖控制器時,它不會擴展模態上的調用導航控制器的導航欄。所以模態視圖涵蓋了整個屏幕。關於此細節的詳細說明,請參閱此線程 - http://stackoverflow.com/questions/948023/presenting-modal-view-occasionally-hides-the-navigation-bar – rishi

+0

我的webViewController使用'self.navigationItem'改變done按鈕圖像。所以我的方式是,它會改變'navigationItem',但導航項沒有顯示的位置,除非ViewController位於導航控制器中 - 這是否是正確的解釋? – darksky