gpt4 book ai didi

ios - [NSConcreteValue浮点值] : unrecognized selector sent to instance

转载 作者:行者123 更新时间:2023-11-28 23:26:54 27 4
gpt4 key购买 nike

在我的项目中我遇到了这个问题。

我有一个 NSDictionary,当我尝试调用一个值时,有时应用程序崩溃并且 Xcode 给我这个错误:

  • [NSConcreteValue floatValue]:发送到实例的选择器无法识别

下面是调用字典值的代码(该值不为零):

    float valueTest = [[change valueForKey:@"new"] floatValue];

编辑

这是我的 NSDictionary 的结构:

 {
kind = 1;
new = "0.02696711";
old = "0.04064206";
}

字典永远不会等于nil

方法是这样的:

- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
{
}

字典由系统创建。我检查了字典的日志内容,它已经正确并且格式相同。

我没有其他信息。

我正在寻找一种防止崩溃的方法。

抱歉可能出现英文错误

谢谢

最佳答案

好的,看来我们正在尝试观察 AVCaptureDevice 的 ISO 属性。似乎有时它作为 NSValue 到达,而不是键入为 NSNumber。我不知道为什么会这样,但你可以检查这个条件:

strcmp(@encode(float), [[change valueForKey:@"new"] objCType]) == 0

如果通过,您可以直接提取值:

float f;
[[change valueForKey:@"new"] getValue:&f];

关于ios - [NSConcreteValue浮点值] : unrecognized selector sent to instance,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58376686/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com