gpt4 book ai didi

objective-c - 比较 int 对象和 number 的值不起作用?

转载 作者:行者123 更新时间:2023-12-03 17:59:24 26 4
gpt4 key购买 nike

我正在编写一个应用程序,它接受用户输入(来自 UITextView),然后将输入与预定义值进行比较。文本字段中的所有输入都必须是数字,因此我使用此代码在按下按钮时将 NSString 转换为 int 值。

(年龄是 TextView )

NSString *ageString = age.text;
int ageInt = [ageString intValue];

然后,我使用此代码将文本与预定义的数字列表进行比较

if (ageInt > 12) {
label1.textColor = [UIColor greenColor];}
else {
label1.textColor = [UIColor redColor];
}

当我运行应用程序时,一切正常,并且没有收到任何错误,但是,当我在“age”textView 中输入一个大于预定义值(比方说 13)的值时,它仍然会将标签 1 变成红色。

所以这个问题的总结是,当比较值时,它没有正确比较。我很好奇是否有人知道这是为什么?也许我使用了错误的类?

最佳答案

NSLog ageInt:

NSLog(@"age.text: %s, ageInt: %d", age.text, ageInt);

紧接着:

int ageInt = [ageString intValue];

这应该显示出问题,即 ageInt 并不是真的 > 12 以及原因。

如果 ageInt > 13,则颜色设置代码不会被调用,或者颜色在调用后会被重置。

在 Xcode 中添加一些断点,并确保调用正确的颜色 setter - 以及此时 ageInt 的值。

关于objective-c - 比较 int 对象和 number 的值不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8946363/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com