2009-08-08 7 views
5

में एक विशिष्ट तत्व ढूँढना मुझे एक NSArrayController मिला है जिसमें कुछ तत्व हैं। इन तत्वों में 'नाम', 'इंटरफ़ॉर्मेशन' जैसे कुछ गुण हैं।एक NSArrayController

मैं जो चाहता हूं वह केवल एनएसएआरएआर कंट्रोलर में एक तत्व ढूंढना है जिसमें नाम विशेषता सेट है, 'मैड्स' कहें।

चूंकि दक्षता यहां एक बड़ी समस्या नहीं है, इसलिए मैं 'नाम' विशेषता 'मैड्स' की जांच करते समय एनएसएआरएआर कंट्रोलर के सभी तत्वों पर पुनरावृत्ति करके एक रैखिक खोज करता हूं।

लेकिन मुझे एनएसएआरएआर कंट्रोलर से एनएसआईटरेटर नहीं मिल रहा है, इसलिए मुझे आश्चर्य है कि ऐसा करने का कोई और तरीका है?

किसी भी मदद की सराहना की जाती है

उत्तर

5

सामग्री का उपयोग करने के बारे में कैसे?

यानी

// ac is an NSArrayController* 
for (MyObject *mob in ac.content) { 
    if ([mob.name isEqualToString:@"something"]) { 
     // found 
     break; 
    } 
} 
8

arrangedObjects है, जो एक सरणी है जाओ, और या तो उस पर पुनरावृति या filteredArrayUsingPredicate: का उपयोग करें।

यह मानते हुए कि यह सरणी नियंत्रक के filterPredicate सेट करने के लिए अधिक उचित नहीं होगा। यदि आप इस तरह जाते हैं, तो arrangedObjects में केवल मिलान करने वाली वस्तुएं होंगी।

+1

स्पष्ट रूप से एक प्रश्न के दो उत्तरों को स्वीकार नहीं कर सकता:/लेकिन यह उत्तर समान रूप से है। –

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