如何使用drawAtPoint在Xcode中放置图像?

时间:2012-10-10 06:47:59

标签: iphone image uiimage

所以我试图让图像出现在特定的位置。我见过一些关于drawInRect的东西,但我不确定为什么这段代码不能用于drawAtPoint。这是我正在使用的。

- (void)drawRect:(CGRect)rect {
UIImage *image = [UIImage imageNamed:@"icon.png"];
CGPoint kitty;
kitty.x = 144;
kitty.y = 144;
[image drawAtPoint:(CGPoint)kitty];

我也尝试过使用cGPointMake,然后在此之后放置坐标。这两种方法都不会显示图像,但都不会引发错误消息。我错过了什么?

2 个答案:

答案 0 :(得分:0)

使用UIImageView。这是处理图像的特定对象。

//伪代码:

UIImage* anImage = [UIImage imageNamed: @"myImage.png"]
UIImageView* imageView = [[UIImageView alloc] initWithImage: anImage];
(UIView*)[self addChild: imageView];
imageView.center = (CGPoint){10, 20};

drawrect:应该用于指定任务,它是一个模板模式,你应该用它来更新一些GUI逻辑。阅读apple doc以获取更多详细信息(按照我很少使用的方式)

答案 1 :(得分:0)

为了让它工作,我需要创建一个UIView的子类,我把它放在其中:

- (void)drawRect:(CGRect)rect
{
[[UIImage imageNamed:@"icon.png"] drawAtPoint:CGPointMake(curPoint.x,curPoint.y) ];
}

我缺少的另一件事是setNeedsDisplay方法,我在ViewController.m文件中使用它。