gpt4 book ai didi

ios - 发送嵌套消息时正确转换

转载 作者:行者123 更新时间:2023-11-29 12:47:07 25 4
gpt4 key购买 nike

像这样从 childViewController 获取 UITextView 的文本属性:

NSString *text = [((UITextField *)[[childViewController view]viewWithTag:0])text];

Xcode 似乎没问题。但是,一旦应用程序运行并调用该方法,我就会收到 未捕获的异常 'NSInvalidArgumentException',原因:'-[UIView 文本]:无法识别的选择器发送到实例 0x89763f0' 我认为有问题我转换到 UITextField 的方式不对。
我已经尝试过其他几种方法来转换它,但它们总是在 Xcode 中给我错误,所以我想这是我最接近的解决方案。
有人知道如何正确转换吗?
感谢您的帮助!

最佳答案

代码没有任何问题,除了难以阅读(因此难以维护),但是您需要添加一些检查以查看您认为的 View 是否是UITextField 实际上是一个:

UITextField *textField = [[childViewController view] viewWithTag:0];
NSAssert([textField isKindOfClass:[UITextField class]], @"Oh no! I was wrong");
NSString *text = textField.text;

我建议标记 0 是一个错误的数字,因为它是默认(未设置)值,我希望断言 fire

关于ios - 发送嵌套消息时正确转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23431266/

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