2011-05-12 65 views
0

這可能是一個簡單的,但我真的不能回答它。ios 4 setBackgroundColor不被drawRect調用

我完成了CS193p類中顯示的一個演示應用程序。它基本上是一個非常簡單的視圖,具有UISlider和自定義子視圖,根據滑塊的值執行一些繪製。 (這是一個笑臉,很酷!)

我決定給自定義視圖添加一個委託協議,該協議返回一個UIColor對象,這樣當滑塊使臉部開心時,它也會使視圖的背景從紅色變爲綠色。

工作正常,但背景開始爲白色!只要我觸摸滑塊,BOOM就會進入RED並且工作正常......但是它以WHITE開始?爲什麼?!!

回答

0

沒有看到你的代碼,我猜想背景顏色是在nib文件中設置的。如果您不使用界面構建器,背景的默認值有可能是白色的,但我不確定這一點。

我會檢查你的筆尖文件,看看視圖的背景顏色設置爲。另外,我會將viewDidLoad方法中的視圖的背景顏色設置爲任何你希望它開始的樣子。

隨意張貼一些代碼,如果我是大錯特錯......

+0

嗨MobileVet,感謝您的回答。事實上,我之前已將背景設置爲不同的顏色(藍色),但隨後決定實施紅色至綠色效果作爲了解代表團的練習。我試圖在界面生成器中將其設置回「默認」,並且我得到了之前提到的行爲,它開始爲白色。 這只是有點令人沮喪,因爲我的方法在我的View的drawRect方法中將背景顏色描繪爲最後一次調用。它應該通過一切手段執行該電話並將其塗成紅色!這顯然有效,因爲我的笑臉露出悲傷的笑容。 – holografix 2011-05-12 23:53:52

+0

嗯,我覺得我不知所措,不知所措。抱歉。 – MobileVet 2011-05-18 17:02:51

0

的背景色爲白色最初因爲改變backgroundcolor不會立即改變顏色。下次重繪視圖時顏色會改變,例如當您移動滑塊時。

相關問題