2012-07-05 20 views
9

मुझे CLGeocoder के साथ कोई समस्या है, जहां मैं geocodeAddressString:withCompletionHandler पर कॉल करता हूं, मुझे यह जानने के बावजूद केवल एक परिणाम मिलता है कि इनपुट स्ट्रिंग को एक से अधिक मान लौटाया जाना चाहिए। कक्षा संदर्भ में यह भी कहा गया है:CLGeocoder केवल एक प्लेसमार्क लौट रहा है

आगे-जियोकोडिंग अनुरोधों के मामले में, प्रदान की गई जानकारी कई संभावित स्थानों को उत्पन्न करने पर एकाधिक प्लेमार्क ऑब्जेक्ट लौटा दिए जा सकते हैं।

[geocoderDestination geocodeAddressString:destination completionHandler:^(NSArray *placemarks, NSError *error){ 
NSLog(@"array count:%i", [placemarks count];} 

किसी भी मदद के लिए धन्यवाद:

लेकिन, मेरा स्थान-चिह्न सरणी ही कभी उस में एक आइटम है।


मैं इस तरह के "पिकाडिली, ब्रिटेन", "यूनियन स्ट्रीट, ब्रिटेन" जो केवल एक ही परिणाम वापस आ गए के रूप में तार का इस्तेमाल किया है। अब जब मैं इसके बारे में सोचता हूं, तो ब्रिटेन को अंत में डालने का योगदान कारक हो सकता है।

+0

आप अपनी नमूना स्ट्रिंग जोड़ सकते हैं, ताकि अन्य स्वयं के लिए परीक्षण कर सकें –

+0

हो गया, लेकिन मुझे लगता है कि अब मुझे मेरी त्रुटि का एहसास हुआ है। लेकिन समस्या यह है कि मुझे यूके विशिष्ट होने के परिणाम की आवश्यकता है, और geocodeAddressString का उपयोग करना: inRegion: बहुत अच्छा नहीं है क्योंकि आपको त्रिज्या आवंटित करना है, इसलिए कुछ आयरलैंड शामिल किए जाएंगे। – prince

+0

वैसे यह पेशाब ले रहा है, भले ही मैं CLLocationDistance distance1 = 750 का उपयोग करता हूं; CLRegion * क्षेत्र = [[CLRegion alloc] initCircularRegionWithCenter: CLLocationCoordinate2DMake (53.825564, -2.421976) त्रिज्या: दूरी 1 पहचानकर्ता: शून्य]; geocodeAddressString के साथ: inRegion: तो यह मुझे "Piccadilly" के लिए ऑस्ट्रेलिया में कुछ जगह देता है। – prince

उत्तर

4

मुझे सीएलजीकोडर के बारे में पता नहीं है, लेकिन यदि आपकी आवश्यकता एक स्थान खोज है तो Google स्थान खोज url http://maps.google.com/maps/geo?q=london का उपयोग करने का एक और तरीका है जो मेल किए गए स्थान की जानकारी वाले एक जेसन को देता है।

+0

धन्यवाद, मैं उस दौरान इसका उपयोग करूंगा क्योंकि मैं अभी भी यह काम नहीं कर सकता – prince

1

UK के बजाय United Kingdom का उपयोग करें, यह आपको कुछ संबंधित परिणाम देगा।
अपने पते में कुछ और जानकारी जोड़ने का प्रयास करें।
एक और बात UK मान्य देश कोड नहीं है यह GB है लेकिन ऐसा लगता है कि के बजाय GB डालने से समस्या हल नहीं हुई।
इसके अलावा CLGeocoderGoogle Maps API जितना स्मार्ट नहीं है क्योंकि सेब पते को डीकोड करने के लिए अपने सर्वर का उपयोग करता है ताकि आप Google सेवाओं का उपयोग कर सकें।

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