1

我正在尝试使用 arc4random,但它导致我的应用程序崩溃。在我看来,我有一个文本字段,用户将输入一个数字,当点击按钮时,这个数字用于范围,我使用的代码如下:

int myInt1 = [textfield.text intValue];
int fromNumber = 1;

int rnumber = (arc4random() % (myInt1 - fromNumber)) + fromNumber;
number1.text = [[NSString alloc] initWithFormat:@"%i",rnumber];

例如,如果我使用 50 而不是 myInt1 它将起作用,但我需要用户输入。任何帮助是极大的赞赏。

我注意到当文本字段中有一个图形时它会起作用,当它留空并且选择按钮然后应用程序崩溃时。在控制台中显示“响应 SpringBoard 的终止而终止”。

4

1 回答 1

0

如果变量 50 有效,那么您的文本字段的文本显然有问题。您的文本字段很可能为零。尝试检查您的代码,看看是否有任何东西影响您的应用程序变为 nil。

我会告诉你这个,以防下次发生类似的事情。例如,您应该始终尝试调试您的代码,而不是用最少的代码直接将其发布到堆栈溢出,而是尝试自己找出问题!

例如,一种方法可以确定您的问题出了什么问题,我建议您现在尝试并将结果反馈给我,即检查文本字段是否非零,如下所示:

if (textfield) {

 NSLog (@"Text field is not nil! GOOD!");

 }

如果在您的控制台中调用日志,您就知道您的问题是文本字段为 nil。

于 2012-06-20T12:13:50.707 回答