Уведомления об ошибках
Дважды щелкните на файле WhereAmlViewController.xib, чтобы создать графический интерфейс пользователя. Руководствуясь в качестве образца, перетащите двенадцать объектов Label из библиотеки в окно View. Шесть из них следует расположить у левого края экрана, выровнять по правому краю и выделить полужирным. Присвойте каждой из выделенных полужирным меток по очереди следующие значения: Latitude:, Longitude:, Horizontal Accuracy:, Altitude:, Vertical Accuracy:, а также Distance Traveled:.
Метка Horizontal Accuracy: получается самой длинной, поэтому ее целесообразно расположить первой, а затем нажать клавишу Alt и перетащить копии данной метки, чтобы создать пять других меток у левого края экрана. Шесть остальных меток следует расположить у правого края экрана рядом с каждой из выделенных полужирным меток и выровнять по левому краю.
Каждая из меток у правого края экрана должна быть связана с соответствующим выходом, определенным ранее в заголовочном файле. Как только связь со всеми шестью выходами будет установлена, дважды щелкните на каждой из меток по очереди, чтобы удалить содержащийся в них первоначальный текст.
Сохраните внесенные вами изменения и вернитесь в среду Xcode. Выберите исходный файл WhereAmlViewController .ш и внесите в самом его начале изменения.
В методе viewDidLoad мы назначаем и инициализируем экземпляр объекта типа CLLocationManager, присваиваем класс контроллера в качестве делегата, задаем желательную точность в соответствии с самым точным способом определения местоположения из всех доступных, а затем предписываем назначенному экземпляру диспетчера местоположения приступить к снабжению нашего приложения обновлениями местоположения.
Данный класс специально предназначен для того, чтобы служить в качестве делегата диспетчера местоположения, а значит, нам известно, что обновления местоположения будут поступать в этот класс, если мы реализуем метод делегата locationmanager:didUpdateTo location: fromLocation:. Поэтому перейдем к рассмотрению реализации данного метода. Прежде всего мы проверяем в данном методе, содержит ли свойство startingPoint пустое значение nil. Если содержит, значит, данное обновление оказывается первым, поступившим от диспетчера местоположения, поэтому присваиваем текущее местоположение свойству startingPoint.
- Дата: 25-01-2015, 14:10