我已将一些将字符串转换为数据的代码放在一起,然后将数据放入另一个文本字段中。一切正常,但是当我运行程序并点击包含此代码的IB Action按钮时:
[InputData setStringValue:OutputString];
我收到此错误:
主题1:程序接收信号:“SIGABRT”。
在Xcode底部的输出区域,我收到此消息:
由于未捕获的异常'NSInvalidArgumentException'而终止应用,原因:' - [NSConcreteMutableData setStringValue:]:无法识别的选择器发送到实例0x62507e0'
为什么会这样? 警告告诉我:
找不到实例方法-setStringValue'(返回类型默认为id)
发生了什么事,我已经查看了它,似乎它应该有效。我究竟做错了什么?我只是Objective-C的初学者。
谢谢,感激不尽。
答案 0 :(得分:2)
根据调试器, InputData 对象是NSMutableData的一个实例,它没有 setStringValue 方法。查看您的代码并确认您正在调用您正在尝试定位的对象上的方法。
答案 1 :(得分:1)
听起来NSData上有一个包含setStringValue方法的类别。类别实现文件可能名为NSData-extras.m。确保文件已添加到Xcode(如果Xcode已知,则是正在构建的Target的一部分)。
答案 2 :(得分:0)
假设您的InputData必须是UITextField,请尝试:
[InputData setText:OutputString];