2011-07-13 69 views
3
-(IBAction)random { 
int text = rand() % 10; 
switch (text) { 
case 0: 
label_name.text = @"text1"; 
break; 
case 1: 
label_name.text = @"text2"; 
break; 
case 2: 
label_name.text = @"text3"; 
break; 

...等等....iPhone文字隨機問題?

我使用的功能隨機的隨機文本的生成,但我每次關閉和啓動應用程序時我看到它創建或生成相同的文本。

我怎樣才能始終以隨機文本開始...沒有重複或序列...?

+2

好吧,在這兩種情況下,您顯示的文字都是相同的... –

+0

您可以從0-9生成隨機數字,但只會將0和1(對同一字符串)的文本進行更改。但我想,你要找的是srand(種子); - 種子,即以毫秒爲單位的時間或任何其他獨特的價值 – Constantin

回答

1

發生這種情況是因爲您沒有播種發生器。

我會在stdlib.h中使用arc4random()。這使用了比rand()更優越的算法,並且不需要將它播種。在手冊頁中查找這個函數。

+0

嘿,男人!非常感謝! arc4random工作!擁抱! – Charly