iPhone编程随机视图当我点按按钮

时间:2011-02-11 10:39:54

标签: iphone

我有5个不同的视图,当我点击按钮时,我想随机推送5个视图中的一个。但是,我不想为每个视图制作5个不同的控制器。我有机会将它们放在一个控制器中吗?如果是这样,怎么样?

3 个答案:

答案 0 :(得分:0)

只需在按钮的操作上更改控制器的视图插座即可。使用随机数选择哪个视图。 Ouh和- (void)setNeedsDisplay:)

答案 1 :(得分:0)

您必须设置所有视图的标记,然后使用

int r = arc4random() % 5;

查找随机数的方法。使用此新生成的数字检查选择器中的标记

答案 2 :(得分:0)

您可以在单个UIViewController子类中拥有任意数量的视图。你也可以在Interface Builder中创建它们,在你的UIViewController类的一个.xib文件中(可能有点难以看到,但更好的是在它自己的.xib中布置每个UIView)。您可以任意组合呈现它们。假设您想一次只显示一个视图,您可以这样做:

在viewDidLoad方法中,开始显示初始视图,并在您的班级中跟踪当前视图:

...
@property(nonatomic, retain) UIView *currentView;
...
- (void)viewDidLoad 
{
    [self.view addSubview:self.defaultView];
    self.currentView = self.defaultView;
}

Then to switch to a particular other view do this:

- (void) switchToView:(UIView *)newView
{
    [self.currentView removeFromSuperView];
    [self.view addSubview:newView];
    self.currentView = newView;
}


}

或者您可以一次显示所有内容:只需[self.view addSubview:theView];