当我想将 3D 子视图添加到我的控制器视图时遇到问题。我看不到 3D 子视图。是 GameControllerView 类的代码:
override func viewDidLoad() {
super.viewDidLoad()
println("Start the game")
// Model
cubeData = CubeData()
/*
let viewTest = UIView(frame: self.view.frame)
self.view = viewTest
*/
// 3D view position
let sizeScnView = CGSize(width: 350.0, height: 350.0)
let centerView = CGPoint(x: CGRectGetMidX(self.view.frame) - sizeScnView.width/2, y: CGRectGetMidY(self.view.frame) - sizeScnView.height/2)
scnView = GameSceneView(frame: CGRect(origin: centerView, size: sizeScnView))
// add 3D view
self.view.addSubview(scnView)
// don't allows the user to manipulate the camera
scnView.allowsCameraControl = true
// show statistics such as fps and timing information
scnView.showsStatistics = false
// Start Accelerometer
self.motionManager = CMMotionManager()
self.startAccelerometer()
timer = NSTimer.scheduledTimerWithTimeInterval(0.4, target: self, selector: Selector("updateTimer"), userInfo: nil, repeats: true)
}
使用此代码,我看不到我的 GameSceneView,它是 SCNView(3D 视图)的子类。但是,如果我删除 viewTest 变量的注释(就在 cubeData 下方),我的 GameSceneView 会显示但没有我的控制器视图的内容。
问题:为什么 3D 子视图不能出现在控制器视图上?
编辑:我刚刚注意到 3D 视图位于控制器视图背景的后面。如何在视图控制器中包含的背景上添加我的 3D 视图?