我有一个 uitextfield,当它被初始化并且我没有输入任何值时,我发现 uitextfield 的值不是 null 也不是 nil。
NSString *notes = (notesField.text)?(notesField.text)"hello";
NSLog(@"notes: %@",notes);
它不返回任何注释
NSString *notes1;
//or use legnth
if ([notesField.text isEqual""]) {
notes1=@"hello";
NSLog(@"empty textfield: %@",notes1);
//then it returns "hello"
}
else
{
notes1=notesField.text;
NSLog(@"not empty textfield: %@",notes1);
}
这是为什么呢?我还可以使用三元运算符吗?
像这样?
NSString *notes = ([notesField.text length])?(notesField.text)"hello";
Best Answer-推荐答案 strong>
你可以使用
NSString *notes = ([notesField.text length])?(notesField.text)"hello";
或
NSString *notes = ([notesField.text length]==0)?@"hello"notesField.text);
或
NSString *notes = ([notesField.text isEqualToString""])?@"hello"notesField.text);
如果你的 UITextField 没有条目(初始情况),使用第二个或第三个选项会更好。 NSString *notes = ([notesField.text length])?@"hello"notesField.text); 无法正常工作,因为 notesField.text 即使文本字段中没有文本,也将是 TRUE 。所以你应该使用 notesField.text.length 或 [notesField.text isEqualToString""] 。
希望现在清楚。
关于ios - UItextfield 用空字符串初始化?不为空?也没有?,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/15385319/
|