【问题标题】:iOS drawing on command Quartz 2D CGContextiOS 上命令 Quartz 2D CGContext 绘图
【发布时间】:2012-10-05 16:22:02
【问题描述】:

您好,我已经制作了一个自定义视图,它表示带有轴等的图形,因此我在视图的 drawRect: 方法中使用 Quartz 2D 绘制了许多线条。

不过,我现在想更改此设置,以便可以使用视图的控制器分别绘制图形的特定部分。例如,绘制 x 轴等待 10 秒,然后绘制 y 轴。所以我已经分离了绘图命令并将它们放入单独的方法中,以便可以从控制器调用它们,但现在因为我在 drawRect 之外绘图:我无法获得图形上下文。

我应该如何实现这个?石英 2d 是否适合使用?

【问题讨论】:

    标签: iphone objective-c ios quartz-2d cgcontext


    【解决方案1】:

    您可以将drawRect: 功能分成多个UIView's,并让视图控制器管理在给定时间将绘制哪些视图

    【讨论】:

    • 谢谢,我希望将它们全部保留在一点,我也可以完成这项工作。
    【解决方案2】:

    为什么不从每个绘制操作中创建一个 UIImage 并在 UIImageView 中绘制 UIImage ?

    UIGraphicsBeginImageContext(self.view.frame.size);
    //draw code here (draw previous UIIMage first before new drawing)
    [drawImage.image drawInRect:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)];
    
    //now draw here
    
    //get the UIImage
    drawImage.image = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    
    //set the UIImage to your UIImageView
    

    【讨论】:

      猜你喜欢
      • 2023-03-30
      • 1970-01-01
      • 1970-01-01
      • 2013-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-29
      • 1970-01-01
      相关资源
      最近更新 更多