這是來自UIImageView+AFNetworking
庫。AFNetworking使用URL設置UITableViewCell的imageView圖像,設置圖像後imageview框仍爲0
AFImageRequestOperation *requestOperation = [[AFImageRequestOperation alloc] initWithRequest:urlRequest];
[requestOperation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
if ([[urlRequest URL] isEqual:[[self.af_imageRequestOperation request] URL]]) {
if (success) {
success(operation.request, operation.response, responseObject);
} else {
self.image = responseObject;
[self setNeedsLayout];
[self setNeedsDisplay];
}
self.af_imageRequestOperation = nil;
}
我setNeedsLayout
和setNeedsDisplay
增加。在這種情況下,imageview(UITableViewCell
的imageView)仍具有0,0,0,0
框架。單擊單元格將刷新imageview,否則圖像不顯示。
如何強制調整UIImageView
的大小?
我試圖把在
self.image = responseObject;
self.frame = CGRectMake(self.frame.origin.x, self.frame.origin.y,
self.image.size.width, self.image.size.height);
[self setNeedsDisplay];
[self setNeedsLayout];
基於設置框的
How to make UIImageView automatically resize to the size of the image loaded
的溶液。我可以在那裏註銷一個更大的框架,但它不會顯示在屏幕上。