Ios uibezier路径-将不显示

Ios uibezier路径-将不显示,ios,ios4,uibezierpath,Ios,Ios4,Uibezierpath,我第一次尝试使用UIBezierPath,但在视图中显示它时没有成功。我使用的是非常旧的xcode版本(3.2.6) 我还进口了石英砂。我只在viewcontroller.h中添加了-(void)drawshape 构建时,我没有错误。欢迎提供任何帮助。您需要在自定义UIView而不是视图控制器中重写drawRect:来启动绘图。您何时调用drawshape:?如果它在视图控制器中而不是视图中,事情会更复杂-您有UIView子类吗?我有一个视图,是我启动项目时设置的原始视图。我对这个很陌生。dr

我第一次尝试使用UIBezierPath,但在视图中显示它时没有成功。我使用的是非常旧的xcode版本(3.2.6)

我还进口了石英砂。我只在viewcontroller.h中添加了-(void)drawshape


构建时,我没有错误。欢迎提供任何帮助。

您需要在自定义UIView而不是视图控制器中重写drawRect:来启动绘图。

您何时调用
drawshape:
?如果它在视图控制器中而不是视图中,事情会更复杂-您有
UIView
子类吗?我有一个视图,是我启动项目时设置的原始视图。我对这个很陌生。drawshape是因为我不太确定在哪里运行代码而添加的。学童错误?为什么标记为
ios4
?你不是在为iOS 4开发,是吗?
-(void)drawshape:(CGRect)Rect {

  UIBezierPath *cloudpath = [UIBezierPath bezierPath];

  [cloudpath moveToPoint:CGPointMake(100.0, 100.0)]; 
  [cloudpath addLineToPoint:CGPointMake(200, 200)];
  [cloudpath addLineToPoint:CGPointMake(200, 300)];
  [cloudpath addLineToPoint:CGPointMake(250, 330)];
  [cloudpath addLineToPoint:CGPointMake(20, 400)];
  [cloudpath closePath];

  cloudpath.lineWidth = 2;
  [[UIColor blueColor]setStroke];

  [cloudpath stroke];

}