小编B.T*_*ter的帖子

Swift SpriteKit局部变量

我有一个名为的局部变量bomb tower.代码如下:

if checkMark.contains(touchLocation) {
        let bombTowerLevel1 = SKSpriteNode(imageNamed: "bomb tower trial 2")
        bombTowerLevel1.name = "bomb tower" //change later maybe
        bombTowerLevel1.position = bombTowerGhost.position
        bombTowerLevel1.zPosition = 1 //change later for health
        bombTowerLevel1.setScale(frame.size.height/2500)
        self.addChild(bombTowerLevel1)
}
Run Code Online (Sandbox Code Playgroud)

我稍后使用name这里访问它:

func turretShoot() {
    let bombTower = self.childNode(withName: "bomb tower") as! SKSpriteNode
    bombTower.zRotation = mainturret.zRotation
    }
Run Code Online (Sandbox Code Playgroud)

让我明确一下,场景中可能有多个炸弹塔,因此我没有做出bomb tower全局变量.当前代码的问题在于,当我放置一个以上的炸弹塔时,该功能中的动作仅由放置的第一个炸弹塔执行.关于如何访问局部变量并使每一个炸弹塔转向的任何想法?

variables sprite-kit swift

2
推荐指数
1
解决办法
69
查看次数

访问Swift 4中的前置摄像头

我在相机应用程序中有这个

session.sessionPreset = AVCaptureSession.Preset.high
camera = AVCaptureDevice.default(for: AVMediaType.video)

    do {
        let cameraCaptureInput = try AVCaptureDeviceInput(device: camera!)
        cameraCaptureOutput = AVCapturePhotoOutput()

        session.addInput(cameraCaptureInput)
        session.addOutput(cameraCaptureOutput!)

    } catch {
        print(error.localizedDescription)
    }
Run Code Online (Sandbox Code Playgroud)

如何访问前置摄像头?

camera avfoundation swift

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

视图控制器没有初始化程序

class ViewController3: UIViewController {

let session = AVCaptureSession()
var camera : AVCaptureDevice?
var cameraPreviewLayer : AVCaptureVideoPreviewLayer?
var cameraCaptureOutput : AVCapturePhotoOutput
Run Code Online (Sandbox Code Playgroud)

我很困惑,因为我在不同的相机应用程序中使用了完全相同的代码,但无论出于何种原因,我收到错误,说viewcontroller没有初始化器.我该如何修复错误?

initialization swift

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