我正在准备我的iOS7应用程序,有一个奇怪的问题:
当我试图获得一个空的TextField文本时,我会得到"nil",而在过去,它会返回@"“(空字符串)。
这是正式的变更还是错误?
谢了沙尼
发布于 2013-09-11 12:38:42
这是从iOS6到iOS7的正式更改。文本字段过去用于返回空字符串,但现在有了一个nil字符串。
@property (weak, nonatomic) IBOutlet UITextField *tf;
// iOS6
if (![self.tf.text isEqualToString:@""]){
// iOS7
if (self.tf.text != nil && ![self.tf.text isEqualToString:@""]) {发布于 2013-09-11 14:43:04
我认为你能做的另一件事是:-
if([self.tf.text length] != 0)
{
// do whatever
}上述操作将处理空字符串和零字符串。因为向nil发送长度消息将返回0。
发布于 2013-09-12 12:18:06
是的,这是一种正式的改变。所以你需要像这样处理
// For iOS 6
if (![self.tf.text isEqualToString:@""])
{
}
// For iOS 7
if (self.tf.text != nil && [self.tf.text length] != 0)
{
}或
此条件适用于iOS 7和早期版本。
if([self.tf.text length] != 0)
{
// do your stuff
}https://stackoverflow.com/questions/18741335
复制相似问题