Как сохранить координату GPS в iOS?

У меня есть несколько точек интереса и вы хотите их жестко закодировать, но, похоже, для объектива-c не существует чистого объекта.

Я хочу связать два числа с строкой: @ "прохладное место", 37.77794, -122.41933

Нужен ли мне NSDictionary NSStrings и конвертировать каждый float в строку? Кажется, слишком много накладных расходов, чтобы сгруппировать все это? Должен ли я создать c-struct? В этой ситуации нужно много разобраться, но не может придумать, какое именно решение может быть для этого.

благодаря

1
nl ja de

2 ответы

Как вы собираетесь его хранить? Если вы используете что-то вроде базовых данных, тогда ваш самый простой вариант - использовать 2 отдельных числа для долготы и широты, а затем просто создать координату при доступе к данным (CLLocationCoordinate2D в качестве упомянутого тома)

Это очень зависит от вашего метода хранения, поскольку iOS позволяет сохранять только определенные типы объектов для разных методов.

Если вы на самом деле не храните его в файле и не используете его в памяти, то, как сказал Том, что-то вроде CLLocationCoordinate2D будет работать, что является структурой, а не объектом. Если вы хотите использовать фактический объект, используйте CLLocation, который содержит объект CLLocationCoordinate2D.

Вы можете создать объект CLLocationCoordinate2D с помощью:

CLLocationCoordinate2D coord = CLLocationCoordinate2DMake(latitude, longitude);

Или, если вам нужна обертка объекта, создайте объект CLLocation с помощью:

CLLocation *loc = [[CLLocation alloc] initWithLatitude:latitude longitude:longitude];
7
добавлено
Я только видел макрос CLLocationCoordinate2dMake (), но думаю, что CLLocation должен работать лучше. Мне нужно связать строку с этой координатой и подумать о NSDictionary с уникальными ключами имени местоположения, а значения CLLocation * должны хорошо работать.
добавлено автор tarabyte, источник
Да, словарь будет хорош для соответствия строковой координатной пары :)
добавлено автор PaReeOhNos, источник

Взгляните на CLLocationCoordinate2D ( CLLocationCoordinate2D - Apple Developer Docs ), который имеет поле latitude и поле longitude .

2
добавлено
Mobile Dev Jobs — вакансии и аналитика
Mobile Dev Jobs — вакансии и аналитика
6 187 участник(ов)

Публикуем вакансии и запросы на поиск работы по направлению iOS, Android, Xamarin и т.д. ВАЖНО: Правила публикации и правила канала: Ссылка – https://telegra.ph/Pravila-oformleniya-vakansij-i-rezyume-11-09-2

iOS Developers — русскоговорящее сообщество
iOS Developers — русскоговорящее сообщество
2 400 участник(ов)

Общаемся на темы, посвященным iOS-разработке, Swift, Objective-C, SDK, Rx, Cocoa и т.д.