这是我迄今为止尝试过的
我定义了一个全局变量
float imgHeight;
然后在- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
我这样做
size_t pixelsWide = CGImageGetWidth(scribbleImage.image.CGImage);
size_t pixelsHigh = CGImageGetHeight(scribbleImage.image.CGImage);
CGFloat ratio = 312/pixelsWide;
pixelsHigh = pixelsHigh*ratio;
然后在- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
return pixlesHeight;
现在既然heightForRowAtIndexPath
是以前叫过cellForRowAtIndexPath
,我总是得到pixelsHeight as 0
。
我想不出另一种方法来做到这一点。我是否应该在 heightForRow 中重新定义 UIImage 并执行此操作
[scribbleImage setImageWithURL: [NSURL URLWithString:scribble[@"scribble_image"]] placeholderImage:[UIImage imageNamed:@"Default.png"]];
也在里面?!应该有一种更简单的方法来做到这一点。