判断TextField 中是否有值

判断NSString字符串为空几乎是每一个开发人员肯定会碰到的问题,对于绝大多数人最先闪过大脑的是下面的方法

if([yourTextString isEqualToString:@""])

但是很遗憾,这样的判断往往经常会出现失败的情况,造成很多莫名其妙的bug,例如如果用这种方法判断UITextField是否为空便会出现问题

[yourTextField.text isEqualToString:@""]

上面这行代即时在用户未进行任何输入的情况下,也会为NO,这是什么原因呢?

答案其实很简单,yourTextField.text 在最初创建后的值为nil,nil当然不等于@"",故上面的代码应该改为 :

[yourTextField.text isEqualToString:@""]  || yourTextField.text == nil

上面这行代码尽管可以正常工作了,不过每次都要写这么一行代码,实在是有点让人郁闷,其实有一个变通的简洁清晰方法,也是我建议大家使用的:

yourTextField.text.length == 0

判断TextField 中是否有值,布布扣,bubuko.com

时间: 2024-08-02 11:03:57

判断TextField 中是否有值的相关文章

如何获取和判断json中的boolean 值

其实我是明确知道返回来的数据是 boolean 类型的, 只是在做判断的时候 发现直接使用 if([responseObject objectForKey:@"success"]) 判断没有任何意义,因为我判断的是这是不是为真,换句话说,就是是不是非空, 靠当然非空啦,大不了返回一个false 但那个也是有值得,so ,我尝试使用改变数据类型接收, 当我用NSString * 接收时, 发生这种错误 [__NSCFBoolean isEqualToString:]: unrecogni

==运算符是判断栈中两个值是否相等

默认情况下(也即类型没有重载==运算符的情况下),==运算符是判断栈中两个值是否相等.为了验证这个结论,来看下面的程序: namespace JudgeEquals{    class Program    {        static void Main(string[] args)        {            int a = 10;            int b = 10;            Console.WriteLine(a==b); string s1 = "a

关于SQLServer数据库中字段值为NULL,取出来该字段放在DataTable中,判断datatable中该字段值是否为NULL的三种方法

1. DataTable dt;                               //假设字段为name, dt已经保存了数据dt.rows[0]["name"] == System.DBNull.Value;  //判断第一行数据的name字段是否为空 2. DataTable dt;                          //假设字段为name, dt已经保存了数据   dt.rows[0]["name"].ToString() == &

算法--判断数组中是否有重复值

判断数组中是否有重复值 第14节 重复值判断练习题 请设计一个高效算法,判断数组中是否有重复值.必须保证额外空间复杂度为O(1). 给定一个int数组A及它的大小n,请返回它是否有重复值. 测试样例: [1,2,3,4,5,5,6],7 返回:true Java (javac 1.7) 代码自动补全 1 import java.util.*; 2 3 public class Checker { 4 public boolean checkDuplicate(int[] a, int n) {

用 C# 如何判断数据库中是否存在一个值

选定一个列,比如用户编号列 //欲插入的用户编号string ll_userID="xxxxxxxx"; //查询此编号是否存在SqlCommand mycmd = new SqlCommand("select 用户编号 from table where 用户编号='"+ll_userID+"'", mycon); SqlDataReader mysdr = mycmd.ExecuteReader(); if (mysdr.HasRows)  {

node js 判断数组中是否包含某个值

判断数组中是否包含某个值这里有四种方法.用的测试数据: let arr=["a","b","c"]; let arr2={"a":"aaa","b":"bbb","c":"ccc"}; in判断是否在数组的key里in操作符针对的是key,而非value.而对于普通的一维数组来说,key是隐藏的.所以,对于判断某个数组中是否含有

使用Dictionary键值对判断字符串中字符出现次数

介绍Dictionary 使用前需引入命名空间 using System.Collections.Generic Dictionary里面每一个元素都是一个键值对(由两个元素组成:键和值) 键必须是唯一的,而值不需要唯一 键和值都可以是任何类型(比如:string,int,自定义类型等) 通过一个键读取一个值的时间接近0(1) 键值对之间的偏序可以不定义 使用Dictionary 使用dictionary判断字符串中字符出现次数 var dic = new Dictionary<char, in

as3.0 TextField中单行文字内容垂直居中

在开头,先首说一下TextField中单行文字空间是怎样的.图如下 从图中可以看到,当为文字设定像素大小时,我们都可以从TextField中的文字空间信息取得两个信息Ascent与Descent,文字空间与边距的2px一般是固定的.所以如果我们想在TextField中单行文字垂直居中的话,可以这样设定TextField的高度为Ascent+Descent+4px.具体在as3.0中的个人实现代码实例如下: package { import fl.controls.Label; import fl

如何判断js中的数据类型?

js六大数据类型:number.string.object.Boolean.null.undefined string: 由单引号或双引号来说明,如"string" number: 什么整数啊浮点数啊都叫数字,你懂的~ Boolean:  就是true和false啦 undefined: 未定义,就是你创建一个变量后却没给它赋值~ null:  故名思久,null就是没有,什么也不表示 object: 这个我也很难解释的说.就是除了上面五种之外的类型 如何判断js中的数据类型:type