【发布时间】:2013-01-17 12:50:25
【问题描述】:
我有一些代码,我在其中对CGFloats 进行了大量的乘法和除法,以便找出转换的正确尺寸。我注意到有时当我想得到 320 的值时,我会得到 320.00000092。谁能解释为什么会发生这种情况以及如何纠正它?是不是应该这样做?以下是一些可能出现问题的示例代码:
- (void) setMinimumSize
{
CGSize superViewSize = self.superview.bounds.size;
CGSize size = self.frame.size;
CGFloat xScale = superViewSize.width / size.width;
CGFloat yScale = superViewSize.height / size.height;
CGFloat minimumScale = MIN(xScale, yScale);
self.minimumSize = CGSizeMake(size.width * minimumScale, size.height * minimumScale);
}
- (void) scaleToMinimumSize
{
self.transform = CGAffineTransformScale(self.transform, self.minimumSize.width / self.frame.size.width, self.minimumSize.height / self.frame.size.height);
}
【问题讨论】:
-
当这种类型的questin出现时一如既往:floating-point-gui.de
标签: iphone ios cocoa-touch math