MapActivity с фреймворком загрузчика

#android #android-mapview #android-maps #android-3.0-honeycomb #android-support-library

#Android #android-mapview #android-карты #android-3.0-honeycomb #android-поддержка-библиотека

Вопрос:

Существует ли какое-либо решение для использования a MapView (и, следовательно, MapActivity ) с Loader библиотекой совместимости honeycomb до версии 3.0 (и, следовательно FragmentActivity )?

(кстати, я никогда не совсем понимал, зачем нужно расширять MapActivity , чтобы использовать карту — это ужасно ограничивает при написании общих действий. Не был бы интерфейс более подходящим?)

Ответ №1:

По предложению Картера Джернигана, полученному вне диапазона, я в конечном итоге взял исходный код библиотеки compat и поместил копию всего, что есть в android.support.v4.app пакете, в мое собственное дерево исходных текстов под пакетом android.support.v4_map.app . Затем я изменил FragmentActivity , чтобы наследовать от MapActivity вместо Activity и назвал его MapFragmentActivity . Это довольно грубый взлом, но он работает хорошо (пока). Теперь у меня есть все преимущества LoaderManager .

Кроме того, попытка использовать CursorLoader s без LoaderManager — это путь к множеству незакрытых курсоров.

Комментарии:

1. Итак, и что вы делаете, когда выходит новая версия библиотеки поддержки?

2. Внесите изменения, которые вы внесли из исходного кода, и повторно примените их поверх исходного кода новой библиотеки. (Да, это PITA)