2011-05-05 17 views
6

我在使用iPad的應用程序中有一個UITableView。當我以縱向視圖開始並旋轉到橫向時,視圖旋轉並且旋轉看起來不錯。UITableView在從橫向到縱向旋轉時可見的不需要的白色背景

但是,當我從風景旋轉到肖像時,旋轉期間會顯示一個白色邊緣。看起來好像UITableView被調整大小以適應旋轉開始時的肖像顯示。 (當旋轉到橫向,調整首先意味着沒有白色可以看到。)

通過,我已經能夠搶到幾張截圖,看來動畫順序如下:

  1. 調整大小UITableView的
  2. 進行旋轉動畫
  3. 調整大小UIToolbar

雖然研究這個問題,我發現了一些人建議對一個UIWindow的背景顏色更改爲匹配你的視圖(在這種情況下是藍色),但我真正的UITableView沒有純色背景,所以這種方法是不夠的。

我希望能夠控制何時出現各個視圖的旋轉,以便我可以防止在旋轉過程中顯示此白色邊框。或者如果有更好的方法,請分享!

[編輯]這是顯示旋轉過程中的白色邊框粗略截圖:

enter image description here

回答

3

嘗試將窗口層的背景色設置爲[的UIColor blackColor]

+0

這爲我工作。或者,如果您在表格視圖背後有另一個視圖,則將該背景也設置爲黑色。 – JoePasq 2011-05-05 02:19:48

+0

對我來說變得更加複雜。我使用圖像作爲我的單元格的背景(默認情況下,表格視圖不帶圖像正確旋轉)。將包含視圖的表格背景設置爲黑色仍然導致白色邊框。通過設置我的表格視圖的背景顏色爲黑色,我可以做你的建議。但是現在在旋轉過程中,我可以看到UIToolbar在調整表格視圖(顯示黑色)時順利調整大小(從不顯示黑色)。所以在旋轉過程中你會看到一個很寬的工具欄和一個瘦小的表格視圖。這當然有所改善! (但不是很理想) – jmac 2011-05-05 02:42:10

+2

這也適用於我!在我的appDelegate中,我有一行:self.window.layer.backgroundColor = [[UIColor blackColor] CGColor]; – 2011-06-26 22:22:32

相關問題