我正在尝试使用以下被调用的方法来计算 UITableViewCell 和 UIImageView 的适当高度:
-(void)ratioCalculator
{
picH = image.size.height;
picW = image.size.width;
NSLog(@"%d = width %d = height", picW, picH);
picRatio = (picW/picH);
NSLog(@"%F", picRatio);
imageViewH = (260/picRatio);
NSLog(@"%d int", imageViewH);
return;
}
问题是,当它被调用时,picRatio = (picW/picH);
似乎并没有像控制台所说的那样发生:
2012-11-18 21:56:48.787 Name[5374:c07] 640 = width 360 = height
2012-11-18 21:56:48.788 Name[5374:c07] 1.000000
2012-11-18 21:56:48.788 Name[5374:c07] 260 int
1.000000 是浮点数picRatio
,260 是imageViewH
. 显然,这意味着 UITableViewCell 和 UIImageView 都使用了不正确的高度,计算如下:
else {
[self ratioCalculator];
return (imageViewH + 20);
}
和
- (void)showImage:(UIImage *)theImage
{
self.imageView.image = theImage;
self.imageView.hidden = NO;
[self ratioCalculator];
self.imageView.frame = CGRectMake(10, 10, 260, imageViewH);
self.photoLabel.hidden = YES;
}
这可能是一个愚蠢的问题,为什么这个简单的除法不起作用?再次,对不起,如果这是一个愚蠢的问题,但它让我难住了。我觉得我快要疯了。
任何帮助将不胜感激,
问候,
迈克