我有兩個視圖,一個是從界面構建器創建的,另一個是以編程方式創建的。sendSubviewToBack不適用於從xib創建的視圖
我想要做的是讓程序創建的視圖轉發。但是xib創建的視圖始終顯示在第一個視圖上。在viewDidLoad中,我使用sendSubviewToBack:
來做到這一點,但似乎這個代碼不起作用。
有些人可能會說我只能通過xib(或者只能通過代碼)創建這些視圖。但我不想這樣做。
有沒有一個很好的解決方案來實現這個目標?
您的想法和幫助將得到巨大的讚賞。
我有兩個視圖,一個是從界面構建器創建的,另一個是以編程方式創建的。sendSubviewToBack不適用於從xib創建的視圖
我想要做的是讓程序創建的視圖轉發。但是xib創建的視圖始終顯示在第一個視圖上。在viewDidLoad中,我使用sendSubviewToBack:
來做到這一點,但似乎這個代碼不起作用。
有些人可能會說我只能通過xib(或者只能通過代碼)創建這些視圖。但我不想這樣做。
有沒有一個很好的解決方案來實現這個目標?
您的想法和幫助將得到巨大的讚賞。
最有可能你的問題是你打電話sendSubviewToBack:
與視圖不是接收器的直接子視圖。
sendSubviewToBack:
/bringSubviewToFront:
方法適用於視圖的直接子視圖。所以,如果你喜歡這個視圖層次:
A
\
B - D
|
C - E
(B和C是A的兩個子視圖; B有一子視圖d,C有一個子視圖E)
那麼你可以做[A sendSubviewToBack:C]
,但你不能做[A sendSubviewToBack:E]
。
from viewdidload如果你嘗試這樣做將無法正常工作。嘗試在Viewwillappear中執行相同的操作。這是因爲只有viewcontoller將被加載到viewdidload中。所有子視圖將在此之後加載。 –
您是否在de xib-file中創建的視圖正確鏈接到您的代碼屬性? – Maarten