OGeek|极客世界-中国程序员成长平台

标题: objective-c - 我如何清除绘制uiview? [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 15:37
标题: objective-c - 我如何清除绘制uiview?

我目前正在尝试刷新或清除我的 UIView 绘图,但很多方法都不起作用。我试过了:

  1. self.Draw.clearsContextBeforeDrawing
  2. [self.Draw setNeedsDisplay];
  3. self.Draw.removeFromSuperview;

我的代码:

-(void)drawPointUITouch *)touch 
{

    PointLocation *currentLoc = [[PointLocation alloc] init];

    currentLoc.location = [touch locationInView:self];

    self.previousPoint = self.point;

    self.point = currentLoc;
    [self drawToBuffer];

    [self setNeedsDisplay];
}

有什么方法可以清除我的 uidraw 吗?或者至少重新加载它?



Best Answer-推荐答案


这里有一些基本问题。

Draw 是如何声明的?遵循 cocoa 命名约定。只有类名应该大写。类的实例应该以小写字母开头。

我想你想要的是:

@interface Draw: UIView
@end

@implementation Draw

- (void) drawRect: (CGRect) r {
  // here you will draw whatever you want in your view.
}

@end

Draw* draw;

在你的 drawPoint 方法中:

[draw setNeedsDisplay];

有关详细信息,请参阅 View 绘图周期: http://developer.apple.com/library/ios/documentation/UIKit/Reference/UIView_Class/UIView/UIView.html#//apple_ref/doc/uid/TP40006816-CH3-SW136

对于奖励积分,将您的 View 命名为比 Draw 更具描述性的名称。它是某物的 View ,一个包含某些内容的窗口。它不是动词。

关于objective-c - 我如何清除绘制uiview?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11838418/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://jike.in/) Powered by Discuz! X3.4