首页 > 解决方案 > 来自 frame.height 的 CGFloat 值

问题描述

我遇到了一些非常愚蠢的事情:无法使用 CGFloat 从视图大小中获取。有人可以帮助我并解释我做错了什么:

这是代码:

 CGFloat containedViewHeight = self.containedView_.frame.size.height;
 NSLog(@"========================   containedViewHeight  ================= %d", containedViewHeight);
 NSLog(@"========================   containedViewHeight1  ================= %d", self.containedView_.frame.size.height);

这是我得到的:

 ========================   containedViewHeight  ================= 1587588653

 ========================   containedViewHeight1  ================= 775

值“775”看起来不错,但我无法将其保存到任何变量中。我也尝试过这样的事情:

int offset = containerHeight - (int)(self.containedView_.frame.size.height);

(int)(self.containedView_.frame.size.height) 总是等于 0

请给我一个提示什么是错的......

*** 如果我使用 %f 作为内部日志,我得到:

========================   containedViewHeight  ================= 0.000000
=======================   containedViewHeight1  ================= 0.000000

标签: iosobjective-ccgfloat

解决方案


您正在传递%d到 NSLog 的字符串格式。这解释containedViewHeight为整数。你想要%f


推荐阅读