gpt4 book ai didi

ios - 如何绘制 UIBezierPath

转载 作者:可可西里 更新时间:2023-11-01 04:04:45 24 4
gpt4 key购买 nike

这是我想做的:

我有一个 UIBezierPath,我想将它传递给某个方法来绘制它。或者简单地从创建它的方法中提取它。

我不确定如何指示应该在哪个 View 中绘制。是否所有绘制方法都必须以

开头
- (void)drawRect:(CGRect)rect { ...} ?

我可以吗

- (void)drawRect:(CGRect)rect withBezierPath:(UIBezierPath*) bezierPath { ... } ??

如何从另一个方法调用此函数或方法?

最佳答案

drawRect:是当您发送消息 setNeedsDisplay 时自动调用的东西或 setNeedsDisplayInRect:在一个 View 上。你永远不会调用drawRect:直接。

但是您说所有绘图操作都在 drawRect: 中完成是对的方法。典型的实现方式是,

- (void)drawRect:(CGRect)rect {
CGContextRef context = UIGraphicsGetCurrentContext();

/* Do your drawing on `context` */
}

由于您使用的是 UIBezierPath s,您将需要维护一组您需要绘制的贝塞尔曲线路径,然后调用 setNeedsDisplay当事情发生变化时。

- (void)drawRect:(CGRect)rect {    
for ( UIBezierPath * path in bezierPaths ) {
/* set stroke color and fill color for the path */
[path fill];
[path stroke];
}
}

哪里bezierPathsUIBezierPath 的数组

关于ios - 如何绘制 UIBezierPath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6434925/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com