2015-05-27 12 views
9

मैं अभी स्विफ्ट कोडिंग में आया हूं और मैं एक ट्यूटोरियल का पालन करने की कोशिश कर रहा हूं। लेकिन ऐसा लगता है जैसे मेरे द्वारा अनुसरण किए जाने वाले कोडर का पुराना संस्करण हो सकता है, या मैं कुछ गलत कर रहा हूं। मैं ध्वनिबोर्ड बनाने के लिए ध्वनि वस्तु बनाने की कोशिश कर रहा हूं। लेकिन जब मैं एपेंड का उपयोग करके सरणी में ध्वनि फ़ाइल जोड़ने की कोशिश करता हूं, तो यह कहता है कि विधि appendNSArray का सदस्य नहीं है। क्या कोई मुझे बता सकता है क्या हल इस ?!] 1"एनएसएआरएआरएआर 'में' एपेंड 'नामक सदस्य नहीं है

enter image description here

+2

के रूप में आप स्विफ्ट देशी प्रकार सरणी –

उत्तर

23

घोषित लगता है की एक -mutableCopy बनाने की जरूरत में NSArray

var sounds: [Sound] = [] 
1

NSArray अपरिवर्तनीय वस्तु है करने के लिए सही तरीका है। आपउपयोग करने के लिएयहाँ है documentation

+2

के साथ काम भी 'NSMutableArray' एक ही त्रुटि लौटाएगा चाहिए। यह एक प्रकार का इनबिल्ट डेटाटाइप 'सरणी' –

+0

नहीं होना चाहिए विधि का उपयोग करने के लिए आपको 'addObject: ' – Jens

11

आप स्विफ्ट देशी प्रकार सरणी

var array: [Any] = [] 

साथ काम करना चाहिए यदि आप जानते हैं कि यह केवल एक ही प्रकार आप का पालन कर सकते हैं करना होगा:

var intArray: [Int] = [] 
var doubleArray: [Double] = [] 
var stringArray: [String] = [] 
3

स्विफ्ट और फाउंडेशन सरणियों विभिन्न प्रकार के ऑब्जेक्ट्स हैं।
स्विफ्ट Arrayappend नामक एक विधि घोषित करता है, NSMutableArray (NSArray अपरिवर्तनीय है जिसे आप इसे बनाने के बाद संशोधित नहीं कर सकते हैं) इस तरह की विधि घोषित नहीं करता है।
समाधान डाली है अपने एक Array प्रकार (, as ऑपरेटर का उपयोग कर रहे हैं, क्योंकि वे पाट), या एक NSMutableArray पर विधि -addObject: उपयोग करें, लेकिन पहले आप NSArray

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