Как использовать roboguice для внедрения объекта в класс поверхности

У меня есть класс, который расширяет SurfaceView с именем MapView, и класс, который я использую для обновления положения на карте с именем MapUpdater. Я хотел бы иметь возможность внедрить класс MapUpdater в MapView, так как он имеет несколько зависимостей, которые также вводятся с помощью roboguice. Однако объект MapView создается платформой, а не внедряется, поэтому простая попытка внедрения MapUpdater просто дает мне нулевое значение. Каков наилучший способ получить экземпляр MapUpdater, в который могут быть вставлены объекты?

1 ответ

Решение

Попробуйте использовать RoboGuice.getInjector(context).getInstance(MapUpdater.class),

Или, альтернативно, в вашем конструкторе MapView, вызовите RoboGuice.getInjector(context).injectMembers(this) вручную выполнить инъекцию на вашем экземпляре MapView.

Другие вопросы по тегам