关于C#:iOS随机数生成器到新视图

iOS Random Number Generator to a new view

我需要一些应用程序的帮助。我需要为0到15之间的整数生成一个随机数生成器,然后根据创建的数字,将其推送到具有相应数字的视图中。这就是我想要它工作的方式

按一个按钮——>随机数生成器给出一个介于0和15之间的数字——>视图将推送到另一个已分配了随机数生成器给出的数字的视图。

有人能帮我写密码吗?谢谢


arc4random()Objective-C是随机数发生器的标准功能。这会给你和你之间的零的数目。好了,以上十五!您可以生成数之间的操作系统和15(0,0,1,2,…(15)与下面的代码:

1
NSInteger randomNumber = arc4random() % 16;

你可以在一系列的开关或推到if/ else语句不同的视图控制器。

1
2
3
4
5
6
7
8
9
10
UIViewController *viewController = nil;
switch (randomNumber)
{
    case 0:
        viewController = [[MyViewController alloc] initWithNibName:@"MyViewController" bundle:nil];
    break;
    // etc ...
}

[self.navigationController pushViewController:viewController animated:YES];

或相反,在rereading的问题,它会看起来像下面的:

1
2
UIViewController *viewController = [[MyViewController alloc] initWithNibName:@"MyViewController"
viewController.number = randomNumber;

和你有一个"D"类myviewcontroller NSInteger物业在线。


你可以使用arc4random_uniform

1
NSUInteger r = arc4random_uniform(16);


根据苹果,最好的方式是使用统一的和通arc4random _上界:

1
arc4random_uniform(16)

从文件:

arc4random_uniform() will return a uniformly distributed random number
less than upper_bound. arc4random_uniform() is recommended over
constructions like ``arc4random() % upper_bound'' as it avoids"modulo
bias" when the upper bound is not a power of two.

http://免费的Mac /文件/图书馆/ / / / / man3达尔文/ arc4random.3.html联机参考


1
2
3
4
5
6
7
8
9
10
11
12
    int randomIndex = arc4random() % 14 + 1 ; // gives no .between 1 to 15 ..

    switch (randomIndex)
{
    case 0 :
    push view 1 ;
    break;

    case 1:
    ...

}


1
2
3
4
5
extension CGFloat {
   static func random() -> CGFloat {
       return CGFloat(arc4random()) / CGFloat(UInt32.max)
   }
}

4.2在斯威夫特,我们don’t要调用一些函数是"arc4random _创建随机数的统一","现在,我们可以调用的函数"随机(范围)"。

1
2
3
4
5
6
7
8
9
10
//Create Random numbers Swift 4.2

//Int
let randomInt = Int.random(in: 1...10)

//Double
let radomDouble = Double.random(in: 1...10)

//Float
let randomFloat = Double.random(in: 1...10)


我们可以使用这个rand()C函数是:

这产生的1和30之间的一个整数。或者你可以使用像这样的arc4random函数:

1
2
int i = arc4random() % 30;
NSLog(@"Random Number: %i", i);