按下按钮时按下新的视图控制器

时间:2020-03-20 00:24:14

标签: ios swift uinavigationcontroller swift4 swift5

我正在以Swift 5编程方式构建游戏,并希望从主菜单导航至游戏屏幕。这是我的代码:

version: '2'
services:
  myapp:
    image: myregistry/myapp
    container_name: "myapp"
    environment:
      - ASPNETCORE_URLS="https://+443;http://+80"
      - ASPNETCORE_HTTPS_PORT=443
      - ASPNETCORE_ENVIRONMENT=Production
      - ASPNETCORE_Kestrel__Certificates__Default__Password="myPassword"
      - ASPNETCORE_Kestrel__Certificates__Default__Path=/https/mydomain_com.pfx
    volumes:
      - /myApp/Resources/:/data/ResourceRepo
      - ${HOME}/.aspnet/https:/https/
    ports:
      - 80:80
      - 443:443
    networks:
      - myapp-network
    depends_on:
      - mongodb
  mongodb:
    ...
networks:
  myapp-network:
    driver: bridge

以及选择器以在点击时处理推动视图控制器的操作:

func handleButtonsTapped() {
    playButton.addTarget(self, action: #selector(pushGameViewController), for: .touchUpInside)
}

当我点击模拟器中的按钮时,没有任何反应。我的@objc func pushGameViewController() { let destinationVC = GameViewController() navigationController?.pushViewController(destinationVC, animated: true) } 函数中也调用了handleButtonsTapped()

4 个答案:

答案 0 :(得分:0)

这是我的代码,可以运行。

您的ViewController是否设置为UINavigation?

window.open('http://localhost:5000/download/example.docx', '_blank');

答案 1 :(得分:0)

得到答案!

在我的SceneDelegate.swift中,设置:

let menuViewController = UINavigationController(rootViewController: MenuViewController())
window?.rootViewController = menuViewController

现在可以了!感谢大家的评论:)

答案 2 :(得分:0)

您不能直接初始化情节提要视图控制器出口。而是可以从发生情节提要的包中加载它。请按照以下步骤操作。

  1. 首先设置Storyboard ID'GameViewController'(根据屏幕截图)。
  2. 然后用下面的内容替换pushGameViewController函数。

    @objc func pushGameViewController() {
        let storyboard = UIStoryboard(name: "Main", bundle: nil)
        let destinationVC = storyboard.instantiateViewController(withIdentifier: "GameViewController")
        self.navigationController?.pushViewController(destinationVC, animated: true)
    }
    

enter image description here

答案 3 :(得分:0)

@objc func pushGameViewController() {
    let destinationVC = storyboard.instantiateViewController(withIdentifier: "GameViewController") as! GameViewController
    navigationController?.pushViewController(destinationVC, animated: true)
}

请确保在界面构建器中为视图控制器提供一个名为GameViewController的情节提要ID

相关问题