2015-06-09 15 views
6

मैं त्रुटिस्विफ्ट 2.0: यह निष्कर्ष निकाल बंद प्रकार की त्रुटि

वर्तमान संदर्भ

कोड में जो स्विफ्ट 1.2 में

private lazy var _messagesVC = { return MessagesViewController(nibName:"MessagesViewController",bundle:nil)}() 

पूरे काम कर रहा था में बंद प्रकार का अनुमान लगा पाने में असमर्थ नियंत्रक देखें जहां मुझे यह त्रुटि मिलती है

import UIKit 
class FriendsViewController: UIViewController { 

@IBOutlet weak var containerView: UIView! 
@IBOutlet weak var segmentContainerView: UIView! 
private lazy var _connectionVC = { return FriendsConnectionViewController(nibName:"FriendsConnectionViewController",bundle:nil)}() 
private lazy var _messagesVC = { return MessagesViewController(nibName:"MessagesViewController",bundle:nil)}() 


override func viewDidLoad() { 
    super.viewDidLoad() 
    self.selectedControllerFrom(index: 0) 
    // Do any additional setup after loading the view. 
} 

override func viewWillAppear(animated: Bool) { 
    super.viewWillAppear(animated) 

} 

func selectedControllerFrom(index index:UInt) 
{ 
    var vc:UIViewController? 
    switch index{ 
    case 0: vc = _connectionVC 
    case 1: vc = _messagesVC 
    default : vc = nil 
    } 
    if vc != nil{ 
     self.showViewController(vc!,containerView: containerView); 
    } 
} 
+0

क्या आप संपूर्ण संदर्भ दिखा सकते हैं? '_mapVC' संभवतः कुछ वर्ग की संपत्ति है, और आपकी घोषणा खेल के मैदान में काम करने लगती है अगर मैं इसे एक साधारण श्रेणी परिभाषा (और अपने 'MapViewController' को धोखा देता हूं) के अंदर डालता हूं ... – Grimxn

+0

अन्य नियंत्रक जोड़ा गया लेकिन एक ही त्रुटि के साथ ... – UnRewa

+2

क्या आपने एक प्रकार की टिप्पणी जोड़ने की कोशिश की है? 'निजी आलसी var _messagesVC: MessageViewController = {..}()' –

उत्तर

4

मुझे इस त्रुटि से छुटकारा पाने के दो तरीके मिले।

सबसे पहले, संपत्ति को इसके प्रकार के साथ स्पष्ट रूप से एनोटेट करें। मुझे यह बहुत अजीब लगता है क्योंकि स्विफ्ट को शुरुआत से ही इसका अनुमान लगाना चाहिए।

lazy var embeddedViewController: CustomViewController = CustomViewController() 

दूसरा आलसी कीवर्ड को निकालने के लिए है।

var embeddedViewController = CustomViewController() 

तो मुझे लगता है कि यह वर्तमान में स्विफ्ट 2.0 में आलसी गुणों को परेशान करने में एक त्रुटि है?

+0

स्पष्ट रूप से मेरे लिए प्रकार का काम घोषित करता है – onmyway133

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