iOS   发布时间:2022-05-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了iphone – UITextField:测试空字符串或nil或null的text属性不起作用大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我有这个奇怪的问题测试空(或null)文本属性. 在这里我的设置:我有一个带有6个文本字段的视图,这里是我用来通过那些字段的代码(加载到NSMutable数组中)… NSEnumerator *portsEnumerator = [appliancePorts objectEnumerator]; UITextField *tmpField; newSite.port = [NSMutableAr
我有这个奇怪的问题测试空(或null)文本属性.
在这里我的设置:我有@L_618_4@带有6个文本字段的视图,这里是我用来通过那些字段的代码(加载到NSMutable数组中)…

NSEnumerator *portsEnumerator = [appliancePorts objectEnumerator];
UITextField *tmpField;
newSite.port = [NSMutableArray array];
while (tmpField =[portsEnumerator nextObject]) {
    NSLog(@"value:%@",tmpField.text);
    if (![tmpField.text isEqualToString:nil]) {
        [newSite.port addObject:(NSString *)tmpField.text];
    }
}

当我在这个界面中并在前两个字段中键入一些文本并在“仅”选项卡中显示重新生成字段时,这里的“完成”按钮就是我从GDB输出中得到的内容

2010-08-10 20:16:54.489 myApp[4883:207] value:Value 1

2010-08-10 20:16:58.115 myApp[4883:207] value:Value 2

2010-08-10 20:17:02.002 myApp[4883:207] value:

2010-08-10 20:17:13.034 myApp[4883:207] value:

2010-08-10 20:17:15.854 myApp[4883:207] value:

2010-08-10 20:17:17.762 myApp[4883:207] value:

我知道如果我测试空字符串它应该工作,因为转储到控制台时的文本属性显示

UITextField: 0x5d552a0; frame = (20 8; 260 30); text = ''; clipsToBounds = YES; opaque = NO; tag = 1; layer = CALayer: 0x5d54f20

但是,当我返回视图时,真正的问题开始,在同@L_618_4@前两个字段中输入一些文本,然后在“完成”按钮之后输入(不通过另@L_618_4@字段,因此它们不会得到任何焦点).这又是GDB输出……

2010-08-10 20:23:27.902 myApp[4914:207] value:Value 1

2010-08-10 20:23:31.739 myApp[4914:207] value:Value 2

2010-08-10 20:23:34.523 myApp[4914:207] value:(null)

所以,显而易见的问题是,首先isEqualtoString:nil不起作用,其次,为了将焦点放在字段上,这个文本怎么会从”变为null.

那么,有没有更好的方法来测试空场?

谢谢!

@R_403_1964@

我倾向于使用

if (![tmpField.text length])

如果它是零或@“”,这将错过它.即它找到字符串的长度,如果它是0(如果字符串为空或nil则是这种情况)它不执行IF命令.

大佬总结

以上是大佬教程为你收集整理的iphone – UITextField:测试空字符串或nil或null的text属性不起作用全部内容,希望文章能够帮你解决iphone – UITextField:测试空字符串或nil或null的text属性不起作用所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。