Iphone 在视图中绘制线:不绘制
我在试图划清界限 我的密码是Iphone 在视图中绘制线:不绘制,iphone,uiview,drawing,cgcontext,Iphone,Uiview,Drawing,Cgcontext,我在试图划清界限 我的密码是 -(void) drawRect:(CGRect) rect { NSLog(@"Reached Draw ARect Function"); CGContextRef ctx = UIGraphicsGetCurrentContext(); CGContextSetLineWidth(ctx, 2.0); CGContextSetRGBStrokeColor(ctx, 1.0, 2.0, 0, 1); CGContex
-(void) drawRect:(CGRect) rect
{
NSLog(@"Reached Draw ARect Function");
CGContextRef ctx = UIGraphicsGetCurrentContext();
CGContextSetLineWidth(ctx, 2.0);
CGContextSetRGBStrokeColor(ctx, 1.0, 2.0, 0, 1);
CGContextMoveToPoint(ctx, 0, 0);
CGContextAddLineToPoint( ctx, 100,100);
CGContextStrokePath(ctx);
}
我从viewDidLoad打电话如下
- (void)viewDidLoad {
[super viewDidLoad];
CGRect k = CGRectMake(1.0, 1.0, 100.0, 200.0);
[self.view drawRect:k];
}
有人能帮我吗?你应该子类化一个
UIView
,并像你现在做的那样,将你的线条绘制代码移动到drawRect:
方法(只希望它是UIView子类,而不是UIViewController)
您还必须确保在InterfaceBuilder中将UIView子类用于要绘制到的视图。你不应该自己调用这个方法。如果你想制作动画,你应该调用[view setNeedsDisplay]
请求重新绘制视图。
…和…您应该添加
CGContextBeginPath(ctx)
在调用CGContextMoveToPoint
之前,不能直接调用drawRect
相反,您可以在UIView上调用setNeedsDisplay,返回,然后等待操作系统稍后使用适当的上下文调用UIView的drawRect。如果需要调用
- (void)drawRect:(CGRect)rect
方法在用户拖动特定视图时,只需放置以下代码:
[self.view setNeedsDisplay];
然后
方法将自动调用im子类化UIViewController,如何将其更改为UIView。或者如何在继承了UIViewController[等待答案]的类中进行绘制我在这里做了一个小示例查看文件subclass view.h和.mThank了解源代码和时间。我会在检查后回复。epatel,它工作了…:我非常感谢你。但我还有一个问题。只有当我们将视图的类更改为“subclass视图”时,它才会起作用。我正在以编程方式创建视图。[问题描述]我的主视图包含3个按钮。当按下任何按钮时,将加载另一个名为“DetailedView”的视图。按钮1和2将在“DetailedView”中创建一个tableview。按钮3必须绘制一条线。[如果你没有理解我的意思,请回复][对不起,我的英语很差][等待你的回复]对不起,我真的不明白你想要什么。只需点击一个按钮就可以画出一条线,这有很多方法。
[self.view setNeedsDisplay];
- (void)drawRect:(CGRect)rect