2015-12-24 58 views
1

我是一名初学者程序员,一直试图教自己在线编程一个基本应用程序。我目前正在使用Swift 2和Xcode 7在iOS上制作俄罗斯方块。但是,我在更改视图时遇到了问题。我从iOS游戏模板开始,并有一个名为GameViewController的视图,我的游戏在其中运行。当用户输了,我想从那个视图切换到一个叫做EndGameView,我在故事板中创建了这个EndGameView并且链接到EndGameView类。我的问题是,我不知道如何以编程方式呈现EndGameView而不使用,例如,使用故事板中添加的按钮,然后控制拖动到EndGameView。使用Swift 2更改视图Xcode 7

let endGameView = EndGameView() 
super.presentViewController(endGameView, animated: true, completion: nil) 

请原谅我的愚蠢,因为我确信我正在做一个愚蠢的错误,并感谢您的任何帮助。

+0

你能告诉我你在哪里结束游戏?你的故事板的名字? –

+0

EndGameView是UIView子类还是UIViewController子类?如果它是一个视图控制器,将其命名为避免混淆是有帮助的。如果它是一个视图控制器,你使用的代码应该可以工作,除了你应该将'super'更改为'self'或者一个不同的视图控制器,以便让'EndGameView'出现。 –

回答

0

一个简单的方法来改变视图控制器是创建你的两个视图控制器之间的赛格瑞并把它当玩家死了,从你的游戏视图控制器基本上将您EndGameViewController。以下是调用segue的代码行:self.performSegueWithIdentifier("SEAGUEIDTOLOGGEDINSCREEN", sender: nil) 用您创建的segue的id替换SEAGUEIDTOLOGGEDINSCREEN。

如何创建赛格瑞:右键单击并拖动从GameViewController您EndGameViewController并选择“显示” enter image description here

着墨他们后,你会看到一个链接,点击它,你应该看到您的身份证和姓名。

enter image description here

enter image description here

添加名字的原因请看标识插槽,并使用上调用它。

+0

当我这样做时,得到错误“终止于类型为NSException的未捕获异常。”我是否使用错误的segue /创建它不正确? – user3128464

+0

你确定你的SegueID和它的定义是一样的吗?你也可以检查它只是去你的main.storyboard并点击两个视图控制器之间的链接,你应该看到id。我将编辑我的答案,以获得有关定义赛格的更多细节。 –

+0

没关系,我通过反复试验来修复它。我用这种模态。感谢您的帮助:) – user3128464

相关问题