Ответ 1
Вызов [img drawInRect:rect];
.
У меня есть UIImage
, который я хочу нарисовать на UIView
. Но вместо создания UIImageView
и добавления этого в качестве подвью, я хочу перезаписать -drawRect:
и напрямую нарисовать UIView.
Например, мой код выглядит так:
- (void)drawRect:(CGRect)rect {
CGContextRef myContext = UIGraphicsGetCurrentContext();
UIImage *img = [UIImage imageNamed:@"foo.png"];
// how to draw the directly into the view now?
}
Вызов [img drawInRect:rect];
.
Кстати, вы не должны загружать файл изображения в метод drawRect. Потому что метод вызывается всякий раз, когда требуется обновлять представление. Следовательно, это (конечно, процедура загрузки) можно назвать много раз во время работы. (Кроме того, метод OS2.x imageNamed имеет ошибку - не кэшировал изображение и не просочился.)
Поэтому вам лучше загрузить файл в метод инициализации, а не в drawRect.