2013-03-26 21 views
1

我想到做这样的:ios - 从文本字段获取参数时,我应该在修剪之前检查空吗?

NSString *path = [NSString stringWithFormat:@"http://www.somedomain.com?id=%@&email=%@", 
[id.text stringByTrimmingCharactersInSet: [NSCharacterSet whitespaceCharacterSet]], 
[emailField.text stringByTrimmingCharactersInSet: [NSCharacterSet whitespaceCharacterSet]]]; 

将这项工作?或者如果这些字段是空白的,会导致某种错误?

谢谢!

+0

无需删除空格,因为它已经是空字符串。 – aBilal17 2013-03-26 13:20:31

回答

5

如果这些字段为空,那么格式化后会得到一个包含id=(null)&email=(null)的url。

在这种情况下,计数在nil短路消息将无法正常工作,因为您没有将消息发送到任何将为零的对象。

您应该单独检查两个字段,并将其设置为@“”(如果您的API可以处理该问题),或者从URL中省略查询字符串。

1

您可以使用下面的方法来检查其空或不是

if ([[emailField text] stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]].length ==0 ||[[id text] stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]].length ==0) 
{ 
//Dont call api 
}else{ 
// call api 
} 
2

因为这不需要修剪。因为发送消息到null不会有任何效果,同时你需要检查该url是否有效。

相关问题