将 UITextField 文本值转换为布尔值
Posted
技术标签:
【中文标题】将 UITextField 文本值转换为布尔值【英文标题】:Casting UITextField text value to Boolean 【发布时间】:2012-01-09 19:47:45 【问题描述】:我知道我有一个字符串表达式,我需要将它从 UITextField 文本转换为布尔值。有没有更简单的方法可以直接从仅返回是或否的 uitextfield 转换为布尔值?
谢谢。
【问题讨论】:
【参考方案1】:不要使用UITextField
,而是使用UISwitch
来获取布尔值。根据 Apple 开发人员文档,要获取布尔值,您应该使用 UISwitch
。
【讨论】:
【参考方案2】:查看NSString的文档
BOOL boolValue = [textField.text boolValue];
更新
这取决于实际为UITextField
提供输入的内容,但我会说如果是用户输入,那么@amit 的答案会更好,您应该更改设计以使用它。
我的回答仍然是一个很好的提醒,NSString
具有返回原始值的好方法,例如 boolValue
、intValue
、floatValue
...等
【讨论】:
【参考方案3】:BOOL boolValue = [textField.text isEqualToString:@"Yes"] ? YES : NO;
【讨论】:
有了这个,@"YES"
,@"yes"
,@"Y"
,@"1"
等→NO
。
我相信原发帖人说的价值可能只有YES或NO。但如果不是,还有@"Yes"、@"y"、@"t"、@"T"、@"TRUE"、@"True"
@OwenHartnett NSString
的 boolValue
方法处理所有这些
其实我找到了一种方法将该类型转换为: [parameters setValue:[NSNumber numberWithBool:news] forKey:@"news"];这适用于我的情况。谢谢大家,因为我也不认为上述解决方案是错误的。
@kforkarim,请关闭问题。以上是关于将 UITextField 文本值转换为布尔值的主要内容,如果未能解决你的问题,请参考以下文章
如何将布尔值列表转换为单个 int,其中每个布尔值都被解释为位?
当 UITextField 的“editingDidBegin”控件事件触发时,将 UITextField 的当前值设置为一个属性