Tôi có một số UIImage
mà tôi muốn vẽ trên UIView
. Nhưng thay vì tạo một số UIImageView
và thêm số này dưới dạng chế độ xem phụ, tôi muốn ghi đè -drawRect:
và trực tiếp vẽ UIView của tôi.Cách vẽ UIImage hoặc trực tiếp trong -drawRect :?
Ví dụ, mã của tôi trông giống như:
- (void)drawRect:(CGRect)rect {
CGContextRef myContext = UIGraphicsGetCurrentContext();
UIImage *img = [UIImage imageNamed:@"foo.png"];
// how to draw the directly into the view now?
}
Ngoài ra còn có '[img drawAtPoint: point]' nữa, mặc dù tôi thích 'drawInRect:'. –
cố gắng tránh kỹ thuật này nếu bạn có thể; drawInRect và drawAtPoint có hiệu suất khá khủng khiếp. – TomSwift
Cảm ơn. Tôi thấy những thứ này đặc biệt hữu ích (kết hợp với các tiện ích vẽ NSString UIKit tương tự) cho các khung nhìn có chứa hình ảnh nền & văn bản và sau đó được thêm vào dạng xem cuộn. Vẽ hình nền và văn bản với nhau trong drawRect: tránh Quartz pha trộn các lớp (vì nó sẽ làm nếu bạn sử dụng phương pháp tiếp cận phụ UIImageView & UILabel) có tác động đáng kể đến hiệu suất cuộn – cidered