2009-12-06 15 views
5

के साथ एनएसएआरएआरई का उपयोग करना सी # (मोनोटच) में एनएसएआरएआरई ऑब्जेक्ट में आइटम कैसे सम्मिलित करें? मुझे ऐसा करने के लिए उचित विधि नहीं मिल रही है? उद्देश्य-सी पक्ष में, "initWithObjects" नामक एक कन्स्ट्रक्टर होता है लेकिन मुझे यह सी # पक्ष पर नहीं मिलता है।मोनोटouch

public static NSArray FromNSObjects (params NSObject[] items); 

इस तरह उपयोग किया:: - लेकिन अगर आप

NSArray arr = NSArray.FromNSObjects(obj1, obj2, obj3); 

उत्तर

5

एक प्रश्न के साथ अपने प्रश्न का उत्तर देने के लिए खेद है, लेकिन क्या आप वाकई एनएसएआरएआरई बनाना चाहते हैं?

मैं पूछता हूं क्योंकि मोनो टच दृश्यों के पीछे कुछ काम करता है ताकि आपको एनएसएआरएआरई से निपटने की आवश्यकता न हो। इसके बजाय NSString और NSArray से निपटने का

क्रम बजाय सी # तार और दृढ़ता के रूप में इन को उजागर करता है:

आप the MonoTouch API Design page पर जाएं और "NSArray" के लिए एक में पेज खोज करते हैं, तो आप इस मिल जाएगा पूरे एपीआई में टाइप एरे।

दूसरे शब्दों में, जब तक आपके पास कोई विशिष्ट कारण न हो, आपको एनएसएआरएआरई के साथ गड़बड़ नहीं करना पड़ेगा।

लेकिन, आप ऐसा करेंगे अगर एक कारण है, या अगर यह अपनी पसंद है, तो जेसन के जवाब सही है:

NSArray someArray = NSArray.FromNSObjects(thingOne, thingTwo, thingThree); 

केवल एक चीज मैं जोड़ना होगा यह है कि, अगर आप एक उद्देश्य हो -सी देव और MonoTouch को आज़माने की, तो आप इस के लिए इस्तेमाल कर रहे हैं:

NSArray *someArray = [NSArray arrayWithObjects:obj1, obj2, obj3, nil]; 

अंतर ऑब्जेक्टिव-सी संस्करण के अंत में "शून्य" है। मोनो टच के एनएसएआरएआरई में भी यही आवश्यकता नहीं है। आप इसे केवल वे ऑब्जेक्ट पास करते हैं जिन्हें आप चाहते हैं, और यह खुशी से ऐसा करता है। कोई समाप्त अशक्त आवश्यक :)

आशा इस मदद करता है ...

+0

मोनो टच के आंतरिक प्रयासों को मेरे ध्यान में लाने के लिए धन्यवाद। मुझे यह नहीं पता था। – Pompair

1

यह इस स्थिर विधि की तरह दिखता है तुम क्या चाहते है एक एनएसएआरएआरई में हेरफेर करने की तलाश में, आप इसके चचेरे भाई, एनएसएमयूटेबलएरे का उपयोग करना चाहते हैं।

+0

कि डालने नहीं है, कि वस्तुओं के साथ बनाने की है। – Sneakyness

+0

यह वही था जो मैं चाहता था, मैंने अभी अपना प्रश्न गलत बना दिया था। – Pompair

+0

स्नीकीनेस: अपने प्रश्न के आधार पर, ऐसा लगता है कि वह मोनो टच के रास्ते को 'initWithObjects' कहने के लिए चाहता था। पोम्पेयर: आप मेरा स्वीकार स्वीकार कर सकते हैं :) – Jason

2

मैं Monotouch उपयोग नहीं करते समय

पोम

+1

यह एनएस डिक्शनरी पर भी लागू होता है, क्योंकि एनएसएमयूटेबल डिक्शनरी भी है। सिर्फ आपकी जानकारी के लिए। – Sneakyness