Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/93.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 情节提要随机匹配视图_Ios - Fatal编程技术网

Ios 情节提要随机匹配视图

Ios 情节提要随机匹配视图,ios,Ios,我有一个带有几个按钮、标签和两个视图的视图控制器。一个视图是背景。另一个是上面的一个谜题。一切都处于完美的工作状态。我知道如何在只保留一个背景的情况下随机创建拼图。我想做的是点击一个按钮,并有一个与其匹配的背景新的难题。我希望页面上的所有其他函数保持不变。只是一个背景匹配的新拼图。任何帮助都将不胜感激。我将把实施的细节留给您填写 您需要能够关联您的视图。您可以使用严格管理的数组、简单的组合对象或直接关系来实现这一点 严格管理的阵列 NSArray *puzzles = @[/*...*/]; N

我有一个带有几个按钮、标签和两个视图的视图控制器。一个视图是背景。另一个是上面的一个谜题。一切都处于完美的工作状态。我知道如何在只保留一个背景的情况下随机创建拼图。我想做的是点击一个按钮,并有一个与其匹配的背景新的难题。我希望页面上的所有其他函数保持不变。只是一个背景匹配的新拼图。任何帮助都将不胜感激。

我将把实施的细节留给您填写

您需要能够关联您的视图。您可以使用严格管理的数组、简单的组合对象或直接关系来实现这一点

严格管理的阵列

NSArray *puzzles = @[/*...*/];
NSArray *backgrounds = @[/*...*/];

- (IBAction)changePuzzle {
  NSUInteger index = arc4random_uniform([puzzles count]);
  UIView *puzzleView = puzzles[index];
  UIView *backgroundView = backgrounds[index];
  // Update UI with puzzleView and backgroundView
}
简单合成对象

@interface MatchedView : NSObject
@property (strong) UIView *puzzle;
@property (strong) UIView *background;
@end

NSArray *matchedViews = @[/*...*/];

- (IBAction)changePuzzle {
  NSUInteger index = arc4random_uniform([matchedViews count]);
  UIView *puzzleView = [matchedView[index] puzzleView];
  UIView *backgroundView = [matchedView[index] backgroundView];
  // Update UI with puzzleView and backgroundView
}
直接关系

@interface PuzzleView : UIView
@property (strong) UIView *backgroundView;
/* ... */
@end

NSArray *puzzleViews = @[/*...*/];

- (IBAction)changePuzzle {
  NSUInteger index = arc4random_uniform([puzzleViews count]);
  PuzzleView *puzzleView = puzzleViews[index];
  UIView *backgroundView = [puzzleView backgroundView];
  // Update UI with puzzleView and backgroundView
}


按你认为合适的方式制作这些插座。在任何情况下,您都可以使用任何其他方式来替换阵列,您必须查找要在其中随机选择的视图(即使用
标记
)。

我们需要更多信息,如IBOutlet按钮的代码和屏幕截图。问题中也没有解释你的标题“匹配随机视图”是什么意思?问题是什么?对不起。使用故事板,我想将我的拼图图像与背景视图随机匹配。假设我有1000张不同的拼图。我想用1000个背景匹配1000个拼图图像。我点击一个按钮,一个新的随机拼图和匹配的背景将出现。我需要使用2个视图,因为用于拼图的代码是用于pic的。我不想背景变成一个谜。另外,我只想更改这两个视图,因为还有其他按钮和标签,我想保留它们的属性。至于屏幕截图和代码,我会在电脑前完成。一个特定的拼图必须有特定的匹配背景。所以,我需要一对匹配的视图,以便使用故事板或其他我需要使用的工具随机显示。怎么做?哪个按钮的代码?到现在为止,我只有一个洗牌按钮和一个显示谜题解决情况的按钮。我知道如何创建随机拼图。我还没有把它放进任何其他的图片中,因为我已经知道这不是我需要做的。我需要知道如何配对2个视图(拼图视图和背景视图),并在我点击为新拼图创建的“新建”按钮时将它们随机拉起。