Как использовать roboguice для внедрения объекта в класс поверхности
У меня есть класс, который расширяет SurfaceView с именем MapView, и класс, который я использую для обновления положения на карте с именем MapUpdater. Я хотел бы иметь возможность внедрить класс MapUpdater в MapView, так как он имеет несколько зависимостей, которые также вводятся с помощью roboguice. Однако объект MapView создается платформой, а не внедряется, поэтому простая попытка внедрения MapUpdater просто дает мне нулевое значение. Каков наилучший способ получить экземпляр MapUpdater, в который могут быть вставлены объекты?
1 ответ
Попробуйте использовать RoboGuice.getInjector(context).getInstance(MapUpdater.class)
,
Или, альтернативно, в вашем конструкторе MapView, вызовите RoboGuice.getInjector(context).injectMembers(this)
вручную выполнить инъекцию на вашем экземпляре MapView.