2010-09-28 79 views
0

我今天正在尝试石英2D,我得学习基本绘图和其他东西,但现在,不知何故,我做的一切都没有在iPhone屏幕上绘制一个东西!我试图做一个新的项目,从头开始,但仍然没有运气......首先,我做了一个新的基于视图的应用程序,然后创建一个新的文件(.h和.m)作为UIView的子类。在实现中,我只是覆盖了drawRect方法,没有任何反应!继承人的代码:石英2d iPhone没有绘图

- (void)drawRect:(CGRect)rect { 

CGContextRef context = UIGraphicsGetCurrentContext(); 

CGFloat red[4] = {1.0f, 0.0f, 0.0f, 1.0f}; 

CGContextSetStrokeColor(context, red); 
CGContextBeginPath(context); 
CGRect rectangle = CGRectMake(0, 0, 400, 200); 
CGContextAddRect(context, rectangle); 
CGContextSetFillColor(context, red); 
CGContextFillPath(context); 
} 

我还有一个项目,我之前就开始,并在完全相同的代码和运行完美...所以我想我改变了一些设置或东西..谁能帮助?

编辑:有什么我忘了,我敢肯定的是,因为我一直在做什么,我在我的最后一个项目做了,但不知何故,它并不在这一个平局...

+0

你的绘图代码看起来不错(也许你应该设置颜色空间,但它仍然有效),所以我会在其他地方寻找问题。例如,如果您使用IB创建视图类型,请确保您已正确设置视图类型。或者确保它是可见的... – Vladimir 2010-09-28 16:03:37

+0

你如何将视图添加到窗口? – pgb 2010-09-28 16:12:00

+0

将断点放入drawRect方法中。我怀疑你的代码根本没有运行 – vodkhang 2010-09-28 16:44:36

回答

0

我经常忘记在Interface Builder中设置自定义视图的类(弹出窗口的标识页的检查窗窗口)。这将解释为什么drawRect:未被调用。

+0

你是什么意思的自定义视图?你的意思是xcode创建的视图控制器,或者你的意思是我创建的UIView的子类? – retsrif 2010-09-28 17:45:42

+0

通过_custom view_,我的意思是你创建的_UIView_的子类。 – Codo 2010-09-28 17:48:35

+0

谢谢!!有效!虽然我不知道为什么我从来没有需要这样做之前...... – retsrif 2010-09-28 17:52:56