我正在尝试编写一个小游戏,只是为了应用我在本课程中学到的概念。当游戏打开时,我想要一个自定义模态视图来告诉用户如何玩。同样,当它们丢失时,我想呈现一个结果页面,它将在if语句中。我在互联网上搜索过,我找不到一种方法来显示这些视图而没有错误。该视频显示的是如何在按下按钮时显示视图;如何在代码中显示命令的自定义模态视图? (我对Swift很新,所以试着用外行的话说。)谢谢!
import UIKit
var numberValue = 0
let randomInt = getRandomNumber()
class ViewController: UIViewController {
@IBOutlet weak var buttonLabel: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
let vc = self.storyboard?.instantiateViewControllerWithIdentifier("HowToPlayView") as! HowToPlay
self.presentViewController(vc, animated: true, completion: nil)
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func buttonPressed() {
numberValue += 1
updateButtonValue(buttonLabel)
}
}
@IBAction func buttonPressed() {
numberValue += 1
updateButtonValue(buttonLabel)
}
}
这是我的视图控制器。获取错误:线程1:EXC_BAD_ACCESS
答案 0 :(得分:0)
好的,让我们尝试一种不同的方法来解决这个问题。在ViewController上方,您应该看到三个不同的按钮:
单击第一个按钮,然后按Ctrl +拖动到要显示的视图,然后选择以模态方式显示。完成后,您应该会看到此箭头:
从第一个视图到第二个视图,这被称为 segue ,您可以在代码中调用它来从一个视图转换到下一个视图,但首先我们必须提供 segue 标识符。您可以通过单击箭头来执行此操作,并且应该出现如下窗口:
正如你所看到的,你必须填写标识符字段,在我的情况下,我只是将其命名为#34; myAwesomeSegue"。
最后,在第一个ViewController中,当您需要显示下一个视图控制器时运行此代码:
performSegueWithIdentifier("myAwesomeSegue", sender: nil)
请注意,如果您使用此方法,只需删除之前的代码,因为这是一种全新的方法(所以基本上删除此代码):
let vc = self.storyboard?.instantiateViewControllerWithIdentifier("HowToPlayView") as! HowToPlay
self.presentViewController(vc, animated: true, completion: nil)