2015-10-03 22 views
10
import UIKit 
import Metal 
import QuartzCore 

class ViewController: UIViewController { 

var device: MTLDevice! = nil 
var metalLayer: CAMetalLayer! = nil 

override func viewDidLoad() { 
    super.viewDidLoad() 
    // Do any additional setup after loading the view, typically from a nib. 
    device = MTLCreateSystemDefaultDevice() 
    metalLayer = CAMetalLayer()   // 1 
    metalLayer.device = device   // 2 
    metalLayer.pixelFormat = .BGRA8Unorm // 3 
    metalLayer.framebufferOnly = true // 4 
    metalLayer.frame = view.layer.frame // 5 
    view.layer.addSublayer(metalLayer) // 6 
} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 


} 

जब मैं अपने ViewController.swift में यह है, मैं त्रुटि मिलती है "अघोषित प्रकार CAMetalLayer का प्रयोग" देता है, भले ही मैं आयात करने के बाद धातु और QuartzCore। मैं इस कोड को काम करने के लिए कैसे प्राप्त कर सकता हूं?धातु आईओएस त्रुटि संकलन

उत्तर

39

धातु कोड सिम्युलेटर पर संकलित नहीं करता है। किसी डिवाइस के लिए संकलन करने का प्रयास करें।

+0

मैंने अभी तक कुछ भी संकलित नहीं किया है। यह उस सामान को टाइप करने के ठीक बाद दिखाता है और बस – Pocketkid2

+1

एक्सकोड –

+3

में सिम्युलेटर की बजाय डिवाइस का चयन करने का प्रयास करें, यह प्रतिक्रिया प्रश्न का उत्तर नहीं देती है, क्योंकि कोई सवाल नहीं था, हालांकि यह समस्या का समाधान है: सिम्युलेटर धातु कोड संकलित नहीं कर सकता है। यदि आप कोई डिवाइस चुनते हैं, तो संकलन त्रुटियां दूर हो जाती हैं। –

संबंधित मुद्दे