2011-12-28 188 views
2

我想設置背景顏色與我有一個方格的圖像。我目前正在iPhone應用程序中使用此功能,現在正在嘗試創建一個通用應用程序。當我使用這個:背景顏色(colorWithPatternImage)不能填充整個視圖的iPad

UIImage *bgimg = [UIImage imageNamed:@"square_bg.png"]; 
self.view.backgroundColor = [UIColor colorWithPatternImage:bgimg]; 

它工作正常的我的iPhone應用程序。當它以縱向模式加載到iPad上時,底部會有大約20px的空白空間。當它在橫向加載時,它很好。如果我從肖像旋轉到風景,然後再回來,這也很好。

我錯過了什麼,將填充模式一直到我的觀點的底部?

更新

如果我的顏色設置爲純色,[的UIColor blueColor],則整個屏幕正確填寫英寸那麼爲什麼colorWithPatternImage與純色之間的差異呢?

更新2

我使用的文件是的252x230尺寸的PNG文件。我已經使用這個圖像來製作這個應用的iPhone版本中的模式,沒有任何問題。我不確定文件大小或尺寸是否與這個問題有關,但我想我會把它放在那裏以防萬一。

+0

Core Graphics將從視圖的左下角開始繪製圖案圖像。您可以使用帶邊框的圖案圖像進行測試,以查看圖像是否正在剪裁,或者2)是否添加了邊距? – 2012-01-06 19:52:06

+0

我會試一試,讓你知道。 – 2012-01-06 20:07:35

回答

1

20px聽起來像狀態欄高度。你能告訴我們視圖框架嗎?

您的自動設置是否正確設置爲動態寬度&高度和固定邊框?

+0

我有點像一個白癡。我回去檢查所有的尺寸,並且爲這個視圖設置了狀態欄,導致了20px的變化。當我關閉狀態欄時,所有內容都可以正確填寫。仍然好奇爲什麼它不會在橫向模式下影響它。但問題解決了。 – 2012-01-07 16:04:25

+0

我認爲它與自動調整連接。我遇到類似的問題,導航控制器及其導航欄。在橫向或第一次旋轉後啓動時也可以正常工作。 – Sulthan 2012-01-07 17:41:31

2

也許視圖沒有設置到正確的高度。如果將backgroundColor更改爲純色,它會填滿整個屏幕嗎?

+0

是的,它的確如此。如果我用blueColor替換colorWithPatternImage,我會看到全屏的藍色,沒有問題。 – 2011-12-28 12:39:37