簡體   English   中英

UIPopovercontroller與UIButton分離

[英]UIPopovercontroller detached from UIButton

我遇到了一個分離的UIPopovercontroller的問題,我希望有人之前已經看到過這種行為。

我的應用程序在橫向模式下運行,並使用presentPopoverFromRect調用提供了許多彈出框元素。 一些是從頂視圖中啟動的,而另一些是從深埋在顯示器中的視圖中呈現的。 如果彈出窗口是從iPad顯示器的上部2/3處呈現的話,彈出窗口似乎工作正常,但是當試圖從顯示器的底部1/3啟動彈出框時,彈出窗口顯示為與UIButton分離。 x坐標似乎是正確的,但是彈出窗口的y坐標往往位於iPad屏幕的中間或頂部。

我通過在顯示屏的下1/3處創建一個CGRect對象來演示使用固定位置的彈出窗口,但是當iPad呈現彈出窗口時,它會在視圖的上部2/3處呈現彈出窗口或者屏幕的最底部(如果我將CGRect值強制為大的y值)。

在這一點上,我沒有想法,希望論壇上有人看到這個,或者可以就如何嘗試提出建議。

謝謝你的幫助,Wes

我能夠解決我的問題,並認為我會分享我的解決方案,因為其他人有同樣的問題。

解決方案是在調用presentPopoverFromRect之前添加一個調用以設置彈出框大小。

[mySettingsPopoverController setPopoverContentSize:CGSizeMake(320, 320) animated:YES];
[mySettingsPopoverController presentPopoverFromRect:sender.frame inView:self.navigationButtonsView permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];

之前,我沒有在呈現彈出窗口之前設置彈出窗口內容大小。 在popover的viewcontroller的viewDidAppear方法中,我將popover的大小調整為popover中的tableview的大小。 顯然,通過在呈現彈出窗口之前不設置popovercontentsize,您會得到未定義的行為,包括可能將彈出窗口從要連接的元素中分離出來。

韋斯

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM