0

我成功地将一个对象注入到我的活动中,该对象在构造函数中获取当前活动的上下文。然后我试图注入一个依赖于我刚刚注入的对象的对象。我如何确保将注入的实例注入到第二个注入的对象中?

我的活动

class MainActivity extends RoboActivity{

    @Inject DataSource dataSource;
    @Inject Customer customer;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.home_layout);

    }
}

第一个注入的对象

class DataSource{

    private Context context;

    @Inject
    public DataSource(Context context){
        this.context = context;
    }
}

这个对象依赖于之前注入的对象

class Customer{

    private DataSource datasource;

    @Inject
    public Customer(DataSource datasource){
        this.datasource = datasource;
    }
} 
4

1 回答 1

0

您应该将 DataSource 类注释为@ContextSingleton. 然后 RoboGuice 将在该上下文的范围内注入相同的实例。

于 2013-05-09T15:08:52.337 回答