2012-06-15 244 views
2

但是,由於設計原因,我必須以不同的方式放置箭頭。 再次,這是箭頭的位置,不按箭頭方向更改UIPopoverController中的箭頭位置

換句話說

,默認情況下,箭頭放置在UIPopoverController像後續中心:

-----^----- 
|   | 
|   | 
|   | 
|_________| 

我想爲下面的我箭頭放置

--^-------- 
|   | 
|   | 
|   | 
|_________| 

這是可能的嗎?

感謝

+0

箭頭並不總是居中。但它總是指向你展示彈出窗口的視圖,例如一個酒吧按鈕項目,並且你不能改變它。 – Felix

回答

5

箭頭實際上對您在提供RECT指出:

presentPopoverFromRect:inView:permittedArrowDirections:animated: 

因爲酥料餅的觀點試圖顯示與提供的矩形中心對齊它出現在中心。如果在難以出現的位置(如屏幕的一個角落)顯示帶有矩形的彈出框,它將盡可能靠近,但不一定會居中。

不幸的是,你不能真正改變這種行爲,因爲它是在類中內化的,以保持Apple/Cocoa UI的指導方針和行爲。

+0

所以如果我不靠近屏幕的角落,我沒有辦法強制它不被居中對齊?我可以給它一個像素1的矩形,並要求它根據那個位置? – user1118019

+0

非常。您可以給它一個1像素的矩形,但如果1像素矩形不在角落附近(或者如果您將箭頭設置爲向上/向下並將其放在左側/右側邊緣附近),它會嘗試居中對齊自己。 – CrimsonDiego