为什么drawRect方法没有被调用?
问题描述:
#import <UIKit/UIKit.h>
@interface quartzViewController : UIViewController {
IBOutlet UIView *myView;
}
@end
#import "quartzViewController.h"
@implementation quartzViewController
-(void)drawRect:(CGRect)rect
{
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSelectFont(context, "Arial", 24, kCGEncodingFontSpecific);
CGContextSetTextPosition(context,80,80);
CGContextShowText(context, "hello", 6);
//not even this works
CGContextShowTextAtPoint(context, 1,1, "hello", 6);
}
- (void)viewDidLoad {
[myView setNeedsDisplay];
[super viewDidLoad];
}
我需要对笔尖进行任何更改吗?为什么drawRect方法没有被调用?
由于
答
你已经子类UIViewController没有drawRect覆盖。 drawRect是UIView的一种方法。
答
的drawRect:是一个UIView
方法,而不是一个UIViewController
方法。
答
我有我的回答,我花了一类新的我从UIView的继承,我发现的drawRect方法,它不叫..
这个错误是,我被宣告方法UIVIEWCONTRLLER班组长,而我必须在从UIView开始的新类中做 。
+1
FYI-堆栈溢出的工作方式与大多数论坛有点不同。这里的惯例是用复选标记标记“正确的”答案,而不是创建一个新的“答案”。这样未来的用户可以快速查看原始海报的效果......贡献者获得“信誉”点帮助。你应该得到几个答案,并有效地“关闭”这个话题。 – Meltemi 2010-05-12 18:52:33
是啊thanx的答复,我有我的答案,你是对的,我带了一个新的类,我从UIVIEW继承,我发现drawRect方法,这不叫... – Rahul 2010-05-12 07:16:55
如果你有答案,那么你应选择他们接受。你可以阅读FAQ。 – harshalb 2010-09-16 09:35:13