objective-c - 将文本字段的值放入另一个字符串

标签 objective-c cocoa-touch ios nsstring

当我写这篇文章时:

NSLog("Text Value %@",statutsField.text);

它工作正常,但是当我这样做时:

NSURL *url = [NSURL URLWithString:@"http://MyUrl/%@",statutsField.text];

我得到一个错误:

too many argument to method call, expected ...

请帮忙。

最佳答案

URLWithString: 只接受一个参数;一个 NSString。您传递了两个字符串,字符串 @"http://MyUrl/%@"statutsField.text 中的字符串。

您需要构建字符串的组合版本,并将该组合版本传递给 URLWithString:。使用 +[NSString stringWithFormat:]为此:

NSString * myURLString = [NSString stringWithFormat:@"http://MyUrl/%@", statutsField.text]
NSURL * myURL = [NSURL URLWithString:myURLString];

NSLog 函数根据 format specifiers 的数量接受可变 个参数它在其第一个字符串(格式字符串)中找到的;这就是您的 NSLog 调用有效的原因。 stringWithFormat: 方法的工作原理类似。对于在其第一个参数中找到的每个 %@,它从其余参数列表中取出一个对象并将其放入结果字符串中。

详情可以看Formatting String Objects在字符串编程指南中。

关于objective-c - 将文本字段的值放入另一个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6052495/

相关文章:

ios - XCode 5.1 预处理器宏不工作

objective-c - Objective-C/iOS 中的富文本编辑器

objective-c - iPhone/iPad itunes 库读取权限?

ios - 如何让我的视频背景继续使用 swift 播放?

ios - 将元数据添加到我的图像并将其保存在文档目录中

ios - 如何下载文件google drive api ios

iphone - UIPopover 和 UITableView 数据交换

ios - 未调用可达性通知。使用 tonymillion/可达性

objective-c - EXC_BAD_ACCESS 错误

iphone - 局部变量和成员变量在 Objective C 中的行为 - IOS