2011-07-25 77 views
0

我想我已經花了3天的時間嘗試各種人的在線解決方案,使popover出現並工作,字面上沒有一個例子工作。UIPopoverController沒有出現

但是,這是我目前的代碼。有人能告訴我爲什麼我的popover不出現?謝謝。

popper = [[Popper alloc] initWithNibName: @"Popper" bundle: nil]; 
navigationController = [[UINavigationController alloc] initWithRootViewController: popper]; 
[navigationController presentModalViewController: popper animated:YES]; 
[navigationController release]; 
[popper release]; 

注:

  • 我波普類從UIViewController的繼承。
  • 我已經在IB中將我的Xib的類設置爲Popper。
  • 我已經設置我的主視圖控制器使用UIPopoverControllerDelegate。
+0

不確定,但我通常爲模態創建一個屬性。這可能會阻止它正常運行。試試看。 – FreeAsInBeer

回答

0

那麼你有沒有添加navigationController到你的視圖?

爲什麼不這樣做:

[self presentModalViewController: popper animated:YES]; 
+0

嗨,謝謝,儘管由於某種原因,我的Xib的尺寸被忽略,整個768x1024窗口在我的主視圖上滑動。 – MrPopper

0

當你已經初始化,以期所有你需要做的是導航控制器添加到您的視圖導航控制器。

[self.view addSubView: navigationController.view]; 

不把它作爲模態呈現。

0

對於自定義popovers,我建議WEPopover

http://iosdevelopertips.com/open-source/ios-open-source-popover-api-for-iphone-wepopover.html

只是附加視圖控制器到wepopovercontroller和你做。

WEPopoverController *popOver = [[WEPopoverController alloc] initWithContentViewController:saveViewController]; 

    [popOver presentPopoverFromBarButtonItem:sender permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES]; 
    [saveViewControlle release]; 
+0

如果您使用自定義彈出窗口,如上所述,模型視圖控制器佔據整個屏幕。 – Hanuman

0

UIPopoverController僅是在iPad上可用的,因爲你已經與iPhone標記你的問題我猜想這很可能是問題。

+0

我正在爲iPad編碼。哎呀。 – MrPopper