首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当TextField为空时,它返回零

当TextField为空时,它返回零
EN

Stack Overflow用户
提问于 2013-09-11 12:32:01
回答 3查看 2.5K关注 0票数 8

我正在准备我的iOS7应用程序,有一个奇怪的问题:

当我试图获得一个空的TextField文本时,我会得到"nil",而在过去,它会返回@"“(空字符串)。

这是正式的变更还是错误?

谢了沙尼

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-09-11 12:38:42

这是从iOS6到iOS7的正式更改。文本字段过去用于返回空字符串,但现在有了一个nil字符串。

代码语言:javascript
复制
@property (weak, nonatomic) IBOutlet UITextField *tf;

// iOS6
if (![self.tf.text isEqualToString:@""]){

// iOS7    
if (self.tf.text != nil && ![self.tf.text isEqualToString:@""]) {
票数 10
EN

Stack Overflow用户

发布于 2013-09-11 14:43:04

我认为你能做的另一件事是:-

代码语言:javascript
复制
if([self.tf.text length] != 0)
{
// do whatever
}

上述操作将处理空字符串和零字符串。因为向nil发送长度消息将返回0。

票数 6
EN

Stack Overflow用户

发布于 2013-09-12 12:18:06

是的,这是一种正式的改变。所以你需要像这样处理

代码语言:javascript
复制
// For iOS 6
if (![self.tf.text isEqualToString:@""])
{
}

// For iOS 7    
if (self.tf.text != nil && [self.tf.text length] != 0)
{
}

此条件适用于iOS 7和早期版本。

代码语言:javascript
复制
if([self.tf.text length] != 0)
{
// do your stuff
}
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18741335

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档