我希望在随机坐标的屏幕上创建多个点,然后将点连接到最近的点。
或者说,我们有一个10(视图的x,y位置)的数组比?
for (int i=0; i<MATRIX_SIZE; i++) { for (int j=0; j<MATRIX_SIZE; j++) { UIImage *dotImage = [UIImage imageNamed:@"dot_off.png"]; UIImageView *imageView = [[UIImageView alloc] initWithImage:dotImage highlightedImage:[UIImage imageNamed:@"Icon.png"]]; imageView.frame = CGRectMake(0, 0, dotImage.size.width, dotImage.size.height); imageView.userInteractionEnabled = YES; imageView.tag = j*MATRIX_SIZE + i + 1; [self.view addSubview:imageView]; } }
指导我在随机位置绘制或放置相同的图像。
由于
答案 0 :(得分:0)
随机生成图像视图的origin
。假设您希望随机放置在self.view
内的任何位置:
// Set the maximum x and y based on the parent view size
CGFloat maximumX = self.view.frame.size.width;
CGFloat maximumY = self.view.frame.size.height;
在循环内部,将imageView.frame = ...
更改为:
float randomX = ((float)rand() / RAND_MAX) * maximumX;
float randomY = ((float)rand() / RAND_MAX) * maximumY;
imageView.frame = CGRectMake(randomX, randomY, dotImage.size.width, dotImage.size.height);
如果您希望整个图片都在self.view
范围内,请分别从randomX
和randomY
减去宽度和高度的一半。
答案 1 :(得分:0)
使用时间间隔调用arc4random()方法,根据随机值获取随机值显示图像。
like int randomNumber =(arc4random()%(toNumber-fromNumber))+ fromNumber;
使用屏幕的最小值和最大值调用方法。