当我写这篇文章:把一个文本字段的值到另一个字符串中
NSLog("Text Value %@",statutsField.text);
它做工精细,但是当我这样做:
NSURL *url = [NSURL URLWithString:@"http://MyUrl/%@",statutsField.text];
我得到一个错误:
too many argument to method call, expected ...
请帮忙。
当我写这篇文章:把一个文本字段的值到另一个字符串中
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。
尝试[NSURL URLWithString:[NSString stringWithFormat:@"http://MyUrl/%@",statutsField.text]];
希望有所帮助。
试试这个:
NSString *base = @"http://MyUrl/";
NSString *urlString = [base stringByAppendingString:statutsField.text];
NSURL *url = [NSURL URLWithString:urlString];
URLWithString
只接受1参数的方法,但你逝去的两个参数,即字符串@"http://MyUrl/%@"
和statutsField.text
所以,你必须事先字符串连接在一起,或内联使用NSString
的stringWithFormat
方法。
它的工作,塔赫克你所有 – user567 2011-05-19 00:53:13