我的场景是 UIView 控制器以编程方式显示不同的子视图......就像一个游戏板。现在我处于一个令人难以置信的境地:
游戏结束后我找不到重新加载应用程序的方法!?我想做的是在 IBAction 上为明星新游戏终止场景 clic 之后。我的疑问是关于 ViewDidLoad 或调用 Main。
我的场景是 UIView 控制器以编程方式显示不同的子视图......就像一个游戏板。现在我处于一个令人难以置信的境地:
游戏结束后我找不到重新加载应用程序的方法!?我想做的是在 IBAction 上为明星新游戏终止场景 clic 之后。我的疑问是关于 ViewDidLoad 或调用 Main。
尝试将您的代码从 viewDidLoad 移动到新函数中,例如 -(void)startGame 或 -(void)refreshViews: 并在您想要重新加载视图时调用该函数。即使在 viewDidLoad 中,您也可以使用此功能加载您的视图。
-(void)viewDidLoad
{
[super viewDidLoad];
[self startGame];
}
请记住,如果您正在创建分配并在此函数之外添加一些子视图,那么它们将一直可见,除非您在调用 startGame 之前将它们从 superView 中删除。
我用这段代码解决了它:
(IBAction)newGame:(id)sender{
UIView *parent = self.view.superview;
[self.view removeFromSuperview];
self.view = nil; // unloads the view
[parent addSubview:self.view];
}