Guest User

Untitled

a guest
Dec 13th, 2017
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.80 KB | None | 0 0
  1. abstract class SunshineBaseActivity: AppCompatActivity(), IScreenNavigator
  2. {
  3. @Inject lateinit var mContext: Context
  4. ....//
  5. }
  6.  
  7. class SunshineApp: Application()
  8. {
  9. companion object
  10. {
  11. fun getInstance(context: Context): SunshineApp
  12. {
  13. return context.applicationContext as SunshineApp
  14. }
  15. }
  16.  
  17. val appComponent: AppComponent by lazy {
  18. DaggerAppComponent.builder().appModule(AppModule(this)).
  19. networkModule(NetworkModule()).build()
  20. }
  21.  
  22. override fun onCreate()
  23. {
  24. super.onCreate()
  25. appComponent.inject(this)
  26. }
  27. }
  28.  
  29. @Module
  30. class AppModule(val app: SunshineApp)
  31. {
  32. @Provides
  33. @Singleton
  34. fun provideApp() = app
  35.  
  36. @Provides
  37. @Singleton
  38. fun provideContext(): Context
  39. {
  40. return app
  41. }
  42.  
  43. @Provides
  44. @Singleton
  45. fun getLayoutInflater(app: SunshineApp): LayoutInflater
  46. {
  47. return LayoutInflater.from(app)
  48. }
  49. }
Add Comment
Please, Sign In to add comment