相关疑难解决方法(0)

在Swift中实例化和呈现viewController

问题

我开始看一下新SwiftXcode 6,我尝试了一些演示项目和教程.现在我被困在:

实例化然后viewController从特定的故事板中呈现

Objective-C解决方案

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"myStoryboardName" bundle:nil];
UIViewController *vc = [storyboard instantiateViewControllerWithIdentifier:@"myVCID"];
[self presentViewController:vc animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)

如何在Swift上实现这一目标?

objective-c uiviewcontroller ios swift

290
推荐指数
9
解决办法
29万
查看次数

无法使用Xcode 8和Swift 3以编程方式在SpriteKit中触发segue

我正在使用SpriteKit在Xcode 8中制作一个游戏,并且在编程上触发segue时非常困难.我已经进入"Main.storyboard"并在我的"GameViewController"和"MenuViewController"之间制作了一个segue,因为它标识符为"toMenu".

尝试失败#1

在我的GameScene.swift文件中,我将以下代码添加到更新功能中.

override func update(_ currentTime: TimeInterval) {
    // Called before each frame is rendered

    if gameIsRunning == false{
        score = 0
        performSegue(withIdentifier: "toMenu", sender: self)
    }
    }
Run Code Online (Sandbox Code Playgroud)

我的目标是每当gameIsRunning为false时触发segue.但是,我收到以下错误:

Use of unresolved identifier 'performSegue'
Run Code Online (Sandbox Code Playgroud)

这很奇怪,因为performSegue是根据API Reference的声明.

尝试失败#2

我通过将以下代码放入"GameScene.swift"来尝试此解决方案

override func update(_ currentTime: TimeInterval) {
    // Called before each frame is rendered

    if gameIsRunning == false{
        score = 0
        GameScene(MenuViewController, animated: true, completion: nil)
    }
Run Code Online (Sandbox Code Playgroud)

我收到了这个错误:

Type of expression is ambiguous without more context
Run Code Online (Sandbox Code Playgroud)

尝试失败#3

我发现 …

xcode ios segue sprite-kit swift

7
推荐指数
1
解决办法
163
查看次数

如何在panGesture上查看控制器

我正在尝试使用视图控制器.segue的标识符是"Orange"(另一个视图控制器只是一个橙色视图).视图控制器通过故事板进行查看,并连接到主视图控制器中的图像视图.我想用平移手势识别器触发它.因此,当检测到平移时,它只是偏移到视图控制器.

这是我的尝试:

@IBOutlet var panGesture: UIPanGestureRecognizer!

@IBAction func onPan(sender: UIPanGestureRecognizer) {
    if panGesture.state == .Ended {
        print("panned")
    performSegueWithIdentifier("Orange", sender: sender)
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,这不起作用.我知道它确实检测到了泛,但它没有执行segue.

我读了如何从IOS呈现segue - 如何使用swift以编程方式进行segue

ios segue swift

6
推荐指数
1
解决办法
720
查看次数

通过单击 swift 中的 TableView 单元格转到 ViewController

有一个MenuViewController类,其中记录了表中记录的数组:

import Foundation
import UIKit

class MenuViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {

@IBOutlet weak var menuTableView: UITableView!

let myTitle = ["??????", "??????????", "?????????"]


override func viewDidLoad() {
    super.viewDidLoad()


    menuTableView.delegate = self
    menuTableView.dataSource = self
}

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return myTitle.count
}

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = menuTableView.dequeueReusableCell(withIdentifier: "MenuCell") as! MenuTableViewCell
    cell.labelText.text = myTitle[indexPath.row]
    return cell
}
}
Run Code Online (Sandbox Code Playgroud)

你需要在里面写什么才能进入信息控制器?

xcode ios swift

5
推荐指数
1
解决办法
8094
查看次数

标签 统计

ios ×4

swift ×4

segue ×2

xcode ×2

objective-c ×1

sprite-kit ×1

uiviewcontroller ×1