2016-12-09 53 views
0

我有一種情況,我已經使用匕首2注入了所有對象,但在一種情況下,我無法糾正如何注入對象。如何在匕首中創建活動上下文依賴對象?

以下是形勢

mPager.setAdapter(new MyPagerAdapter(this)); 

現在在上面的語句,我必須使用注射的匕首對象MyPagerAdapter,但它需要當前的活動環境。

那麼如何將活動上下文轉發到Dagger模塊呢?

+0

模塊構造函數的參數 – EpicPandaForce

+0

@EpicPandaForce - 能否請您加入解決上述情況的一些代碼將有所幫助。 – Chetan

+1

'@Module @ActivityScope public class MyModule {private Activity activity;公共MyModule(活動活動){this.activity =活動;} ...' – EpicPandaForce

回答

0

(車削@ EpicPandaForce的評論爲答案)

你可以寫一個模塊,需要一個活動的構造函數中的參數是這樣的:

@Module 
@ActivityScope 
public class MyModule { 
    private final Activity activity; 

    public MyModule(Activity activity) { 
     this.activity = activity; 
    } 

    @Provides 
    @ActivityScope 
    Activity activity() { 
     return activity; 
    } 
}