Android注释 – 注入超类types列表

我正在尝试使用Android Annotations实现以下Spring代码:

@Autowired public initHandlerList(List handlerList) { // Do stuff with the list ... } 

我尝试使用接口和类。

Bean定义:

 @EBean public AbstractHandler implements Handler {} 

试图注入:

 @Bean public initHandlersList(List handlersList) { // Do stuff with the list ... } 

但总是得到以下错误:

 Error:(20, 5) error: org.androidannotations.annotations.Bean can only be used on an element annotated with @org.androidannotations.annotations.EBean 

所以我想因为列表本身没有用@EBean注释它不能用作Bean …任何使用Android Annotations实现它的方法?

谢谢 !

对不起,我无法评论,但我的声誉太低了。

我阅读了wiki并在基于方法的注入下看到了你如何注入bean。 我在你的代码中看到的是你确实在创建一个带有AbstractHandler对象的EBean,但是你试图注入一个没有用@EBean注释的List对象,你可以删除List <>并只使用AbstractHandler或者您可以扩展List实现(如ArrayList)并使用@EBean注释它。

 @EBean public class InjectableArrayList extends ArrayList{} 

希望这可以帮助。