Ios4 drawRect未调用ios 4 setBackgroundColor

Ios4 drawRect未调用ios 4 setBackgroundColor,ios4,uicolor,cs193p,Ios4,Uicolor,Cs193p,这可能是一个简单的问题,但我真的无法回答 我完成了CS193p课程中显示的一个演示应用程序。它基本上是一个非常简单的视图,带有一个UISlider和一个自定义子视图,根据滑块的值绘制一些图形。这是一张笑脸,很酷 我决定在自定义视图中添加一个委托协议,该协议返回一个UIColor对象,这样当滑块使人脸高兴时,它也会使视图的背景从红色变为绿色 这很好,但背景一开始是白色的!我一触到滑块,动臂就会变成红色,工作正常。。。但它一开始是白色的?!为什么 如果没有看到您的代码,我猜是在nib文件中设置了背景

这可能是一个简单的问题,但我真的无法回答

我完成了CS193p课程中显示的一个演示应用程序。它基本上是一个非常简单的视图,带有一个UISlider和一个自定义子视图,根据滑块的值绘制一些图形。这是一张笑脸,很酷

我决定在自定义视图中添加一个委托协议,该协议返回一个UIColor对象,这样当滑块使人脸高兴时,它也会使视图的背景从红色变为绿色


这很好,但背景一开始是白色的!我一触到滑块,动臂就会变成红色,工作正常。。。但它一开始是白色的?!为什么

如果没有看到您的代码,我猜是在nib文件中设置了背景色。如果您没有使用interface builder,背景的默认值可能是白色,但我对此不确定

我会检查您的nib文件,看看视图的背景色设置为什么。此外,我会在viewDidLoad方法中将视图的背景色设置为您希望它开始时的任何颜色


如果我偏离了基准,请随意发布一些代码…

背景颜色最初是白色的,因为更改背景颜色不会立即更改颜色。下次重新绘制视图时(例如,移动滑块时)会更改颜色

嗨,MobileVet,谢谢你的回答。事实上,我将背景设置为不同的颜色,以前是蓝色的,但后来我决定实施从红色到绿色的效果,作为理解授权的练习。我尝试在interface builder中将其设置回默认值,得到了我前面提到的行为,它开始时为白色。这只是有点令人沮丧,因为我有一个方法,在我的视图的drawRect方法中最后一次调用时将背景涂成红色。它无论如何都应该执行这个调用并把它涂成红色!这显然有效,因为我的笑脸是带着悲伤的微笑显示的。嗯,我想我没有看到一些代码就不知所措了。很抱歉