问题标签 [cgfloat]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
objective-c - 如何在 NSString 中获取单词的 X 坐标
我有一个标签,里面有一个句子,那是一个字符串。我需要获取字符串中特定单词的 x 坐标。因此,例如,如果我在句子中有一个说“狗跑了”的句子,我需要能够找到 x 和 y 坐标,以及在其上放置 UITextField 的宽度和高度。到目前为止,这是我的代码:
有人能告诉我我需要做什么来解决这个问题吗?
ios - 比较两个相等的 CGFloat:s,得到正(YES)结果
到目前为止,这还不是问题,但从今天开始,我遇到了一个奇怪的问题,这种问题并不总是发生,但很少发生,我会说 50 次,甚至更少。
我正在像这样比较两个 CGFloat:s:
正如你所看到的,我没有比较 using==
或任何东西,因为这些是浮点数......(比如,它不应该与比较浮点值有多危险?现在应该)
我遇到的问题是我遇到了两个值准确的情况,但比较结果为是。在我的例子中,这两个值都是“8926.5”——这个值是我从 LLDB 得到的。这有什么好的解释吗???(我认为 LLDB 会四舍五入这两个值,这意味着它们实际上可能是其他值 - 但为什么这也会在运行时发生?)
这种让我很反感,因为我不能只看到问题......好吧,我正在考虑强制浮动到 int 只是为了这个比较,这一次我可以使用它,但我觉得这个问题最好完全理解:-P
objective-c - 来自 CGFloat 的 NSNumber
有没有一种安全的方法可以将 a “转换”CGFloat
为 a NSNumber
?
NSNumber
具有numberWithFloat:
andnumberWithDouble:
方法,但CGFloat
被定义为float
或double
取决于平台,使用其中任何一个似乎都有风险。
或者numberWithDouble:
与 a 一起使用是安全的CGFloat
,因为它是更精确的那个?
objective-c - 为什么 CGPointEqualToPoint 简单地执行(px == px && py == py)?
由于比较浮动是一个如此困难和有争议的问题,我很惊讶地看到 CGPointEqualToPoint 和其他 CG 比较方法只是这样做:
在某些情况下这不会导致问题吗?或者,Objective-C 是否与 fabs、epsilon 等进行内置浮点比较?我想知道为什么开发人员在这里选择使用直接相等测试。
ios - 将浮点数分配到全局数组中
根据我在此博客上找到的代码,我正在尝试backgroundView
使用渐变自定义分组的 UITableViewCell。它是用于 cell.backgroundView 的 UIView 的子类。
背景渐变的颜色在原始代码中定义如下:
然后,drawRect
在子类 backgroundView 上像这样使用:
我正在尝试实现一个函数来设置渐变的开始和结束颜色,它需要两个 UIColors,然后填充一个全局浮点数组 float startAndEndColors[8]
(在 .h / @interface 中)以供以后使用:
但它在分配时向我抛出了这个错误“预期表达式”。
我尝试了CGFloat
,拼命添加 random const
,但我很快就没有想法了。
我根本不明白,为什么我不能以这种方式填充我的浮点数组?我究竟做错了什么?
iphone - 如何将像素转换为 CGFloat?
我的网页中有一个宽度为“50px”、高度为“40px”的图像。
现在我想在 UIImageView 中显示相同尺寸的图像。
如何将像素转换为 CGFloat?
感谢您的回答。
objective-c - sqlite 浮点比较 - 这是可以预测的吗?
我在 sqlite 中有一个 LOCATIONS 表:
我想在 LocationDao 上实现以下方法
sqlite 如何处理 CGFloat 的搜索?浮点比较的正常问题是否仍然适用?将这些值存储为字符串会更好吗?
我所有的位置都将来自不同的来源,但在保存到数据库之前会通过 Apple 的标准 CLLocation 地理编码器进行抽取。
ios - 替换 `fabs`、`fmax` 等,用于 64 位 iOS 设备上的 CGFloat
问题
考虑这样的布局代码:
第三行应该如何重写以支持 64 位 iOS 设备?
(当前代码没有考虑yCoordinateOfSomeOtherView
是 afloat
还是 a double
。)
选项
几个选项(我不确定哪个是最好的):
1.定义自己的宏
然后我可以替换fmax
为cgfmax
.
2.使用tgmath.h
This Stack Overflow answer from 2011 建议math.h
用tgmath.h
. 这将 的实现替换为fmax
调用__typeof__
每个参数并根据参数类型返回fmax
或返回的实现。fmaxf
3.忽略这个问题
由于 CGFloats 与布局有关,将 a 存储float
到 adouble
中可能导致的数据丢失通常是微不足道的。也就是说,它们将代表像素的一小部分。
概括
我正在寻找以前做过 32 位到 64 位转换的人的任何其他选项或有用的建议。
casting - 乘法/除法浮点数产生双倍?
在Objective-C(或C)中,如果我这样做
那是对的吗?或者,我应该投要么投要么distance
投?velocity
NSTimeInterval
请注意,在 iOS 7.0 中:
ios - iOS CGFloat 语义问题——无效的操作数
在我的界面中有两个 CFFloat 属性。我试图在手势识别器中使用它们,但我继续在带有“allTouchesAreOnPreviewLayer”的 if 语句中收到错误“二进制表达式浮点数和双精度数的无效操作数..”。我不确定如何正确解决此问题。如果您需要更多信息,请与我们联系。我正在尝试实现捏合以放大 UIView。
接口属性:
实施方法:
//错误在这里: