Text 随机文本生成器(每次顺序相同)

Text 随机文本生成器(每次顺序相同),text,random,label,ios6,xcode4.5,Text,Random,Label,Ios6,Xcode4.5,嗨,我正在创建一个应用程序,当我有代码的时候按下一个按钮,它会生成随机文本,工作正常,但当我运行应用程序并按下按钮时,我想更改一些内容,它会显示: “好的,你好,你好,你好,你好,你好,你好,你好,你好,你好,你好,你好,你好” 这是前13次点击,也是我每次使用应用程序的顺序。基本上我不希望他们连续重复两次,而且我希望他们在启动应用程序时以不同的顺序启动 还有一件事,我希望能够写至少两行文字,但如何使用标签 以下是我的代码: h m @界面视图控制器1() @结束 @实现视图控制器1 -(i)随

嗨,我正在创建一个应用程序,当我有代码的时候按下一个按钮,它会生成随机文本,工作正常,但当我运行应用程序并按下按钮时,我想更改一些内容,它会显示:

“好的,你好,你好,你好,你好,你好,你好,你好,你好,你好,你好,你好,你好”

这是前13次点击,也是我每次使用应用程序的顺序。基本上我不希望他们连续重复两次,而且我希望他们在启动应用程序时以不同的顺序启动

还有一件事,我希望能够写至少两行文字,但如何使用标签

以下是我的代码:

h

m

@界面视图控制器1()

@结束

@实现视图控制器1

-(i)随机的{

}


谢谢:)

使用函数
arc4random()
而不是
random()
。您面临的问题是,函数
rand
需要在调用它之前设置种子。这是
rand
在后台使用的随机数生成器的起始值。当您不使用自己的种子时,它总是相同的默认值,因此您总是获得相同的随机值序列。使用
arc4random
时,无需设置种子。有关更多信息,请参阅和

#包括
...
int text=arc4random()%5;

谢谢你知道我怎么能有两行文字吗??Call
srand((未签名)time(0))一次,且仅一次。每次运行程序时,rand()应该在不同的位置启动。@rossum抱歉,您能告诉我/告诉我是什么意思吗?请感谢您在启动代码中的某个地方调用了
srand()
,以便在程序启动时调用它一次。如果可以的话,在
main()
开头附近的某个地方。基本要求是只调用它一次,并且在第一次调用
rand()
之前调用它。您向我们展示的代码似乎被多次调用,因此
srand()。请使用
main()
或等效的启动方法。对不起,我搞糊涂了,你能编辑我的代码并给我看一下吗?电话需要进入你尚未发布的部分代码中。
@interface ViewController1 : UIViewController  {

    IBOutlet UILabel *textview;

}

-(IBAction)random;
int text = rand() % 5;

switch (text) {

    case 0:

        textview.text = @"Hello";

        break;

    case 1:

        textview.text = @"hi";

        break;

    case 2:

        textview.text = @"alright";

        break;

    case 3:

        textview.text = @"yoo";

        break;

    case 4:

        textview.text = @"hiya";

        break;

    default:

        break;

}
#include <stdlib.h>
...
int text = arc4random() % 5;
@interface ViewController1 ()

@end

@implementation ViewController1



-(IBAction)random {

    // Pseudocode here
    if (srand() not yet called) then
      srand();
    endif
    // end Pseudocode

    // You are better to put the call to srand() somewhere 
    // it will only ever be called once, rather than having
    // to mess around with an if-statement.

    int text = arc4random() % 50;

    switch (text) {

        case 0:

            textview.text = @"My text here";

            break;

   default:

            break;

    }

}