Мне интересно, что происходит, когда я использую MKReverseGeocoderDelegate в моем ViewController, но приложение работает в 2.2.1. Потому что я поддерживаю 2.2.1, но использую 3.0 в качестве базового SDK.
Я уже добавил фреймворк в качестве мягкой ссылки для поддержки работы над 2.2.1, и я понимаю, что должен подготовить код, чтобы проверить, доступен ли класс MKReverseGeocoder для выполнения всей причудливой работы с геокодером, но я просто не могу понять если делегат приведет к сбою приложения на 2.2.1, потому что оно не существует. Вот как я проверяю, существует ли класс:
// Try to found location
Class geocoderClass = NSClassFromString(@"MKReverseGeocoder");
if (geocoderClass != nil)
{ // Do my stuff here
}
Но я должен объявить в файле заголовка, чтобы использовать делегата для geocodeClass. Мне интересно, как это работает. Нужно ли мне делать что-нибудь еще для подготовки этого кода?
@interface MainViewController : UIViewController <FlipsideViewControllerDelegate, MKReverseGeocoderDelegate> {
// My declarations here
}
Спасибо Леонардо