iOS Random Number Generator to a new view
我需要一些应用程序的帮助。我需要为0到15之间的整数生成一个随机数生成器,然后根据创建的数字,将其推送到具有相应数字的视图中。这就是我想要它工作的方式
按一个按钮——>随机数生成器给出一个介于0和15之间的数字——>视图将推送到另一个已分配了随机数生成器给出的数字的视图。
有人能帮我写密码吗?谢谢
1 | NSInteger randomNumber = arc4random() % 16; |
你可以在一系列的开关或推到
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
你可以使用
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) |
我们可以使用这个
这产生的1和30之间的一个整数。或者你可以使用像这样的
1 2 | int i = arc4random() % 30; NSLog(@"Random Number: %i", i); |