Передача данных в класс карт в Android - PullRequest
0 голосов
/ 22 апреля 2011

Итак, я работаю над проектом для моей Школы с группой, и мы думаем о реализации способа составления списка преподавателей и сотрудников и возможности «нанести на карту» их или их офис на карте кампуса. на андроид. В настоящее время у нас есть карта, работающая с itemizedOverlays и функциями увеличения и уменьшения.

У меня вопрос, когда кто-то, кто использует это приложение для Android, выбирает преподавателей и сотрудников, как я могу передать их информацию (которая будет просто их именем) в наш класс карт и использовать ее с itemizedOverlays?

код здесь: http://code.google.com/a/eclipselabs.org/p/mtsu-andriod/source/browse/trunk/%20mtsu-andriod%20--username%20craigmurphy88%40gmail.com/MTSU%20Android/src/com/MTSUAndroid/CampusMap.java

мы будем передавать имя учителя ОТ класса человека, К классу карт.

Ответы [ 2 ]

1 голос
/ 22 апреля 2011

Вы также можете использовать параметры Intent Extra, как описано здесь:

http://developer.android.com/reference/android/content/Intent.html

private long lat, lng;
//.. onCreate
   lat = getIntent().getLongExtra("lat");
   lng = getIntent().getLongExtra("lon");

//...
GeoPoint office = new GeoPoint(lat, lng);
OverlayItem oi = new OverlayItem(office, "", "");
itemizedOverlay.addOverlay(oi);
//.. and so on.

На кране вы можете запустить намерение вашей карты следующим образом («i» - это ваше намерение на карте, а «t» - ваш Учитель):

i.putExtra("lat", t.getPos().getLat());
i.putExtra("lng", t.getPos().getLng());
1 голос
/ 22 апреля 2011

Извините, я не понимаю вашу точку зрения. Если вы хотите, чтобы конкретное предупреждение отображалось в событии касания, вы можете расширить OverlayItem, чтобы у него был дополнительный параметр с вашим «идентификатором человека» или чем-то еще. Затем в методе onTap в оверлее получите Person, соответствующий этому идентификатору (разумеется, после приведения вашего объекта). И отобразить предупреждение соответственно.

То же самое происходит, если вы хотите отобразить наложение (или набор элементов наложения) в соответствии с ранее выбранным элементом. Это должно быть довольно просто, либо передав параметр в конструктор CampusMap, либо (некрасиво, но быстрее) сохранить выбранный элемент в статическом классе и получить к нему доступ с карты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...