在iPad中,您可以在模態推送的視圖中更改應用的外觀。但是在選擇主題並駁回視圖後,外觀不會改變。如果我全屏推送其他視圖,視圖會更新。外觀代理重新加載視圖
我該如何強制更新/刷新/重畫外觀?
編輯
我試着打setNeedsDisplay隨處可見,但應用程序不直接響應。 正如引用所說,只要循環重新啓動,該視圖就被標記爲重新繪製。
而且由於視圖已經在模態推送的外觀變換器視圖後加載了其他外觀,因此不會重新加載視圖。
在iPad中,您可以在模態推送的視圖中更改應用的外觀。但是在選擇主題並駁回視圖後,外觀不會改變。如果我全屏推送其他視圖,視圖會更新。外觀代理重新加載視圖
我該如何強制更新/刷新/重畫外觀?
編輯
我試着打setNeedsDisplay隨處可見,但應用程序不直接響應。 正如引用所說,只要循環重新啓動,該視圖就被標記爲重新繪製。
而且由於視圖已經在模態推送的外觀變換器視圖後加載了其他外觀,因此不會重新加載視圖。
我快速固定它。
我剛從一個全屏模式視圖開始,在我改變了主題之後,我關閉了視圖,所以它後面的視圖將被更新。
如果有人有更好的解決方案,我真的很喜歡聽到它。
[view setNeedsDisplay]
通常用於告訴它需要重繪的視圖。
[view setNeedsLayout]
是-layoutSubviews
看到相同的:
是的我知道,但該應用程序不響應該調用。 – Justin
我或多或少地改變了UISliders的外觀。使用[self.view setNeedsDisplay]
沒有效果。
使用下面的代碼行,滑塊的外觀沒有如預期的那樣變化,但是隻有在其他視圖被加載和解除後纔會改變。
[[UISlider appearance] setMinimumTrackTintColor:[UIColor greenColor]];
爲每個滑塊創建IBOutlets並設置tintcolor,如下所示,具有所需效果並立即發生更改。
[volumeSlider setMinimumTrackTintColor:[UIColor greenColor]];
[brightnessSlider setMinimumTrackTintColor:[UIColor greenColor]];
這是醜陋的...但它的工作:) 而且我也想看到更好的解決方案 – Kubba