kw
12/06/2016, 7:40 AMabstract class BaseFragment<View: BaseView, out Presenter : BasePresenter<View>>
protected abstract fun getPassiveView(): View
protected abstract fun getPresenter(): Presenter
Say I create
interface MyView : BaseView{}
MyPresenter : BasePresenter<MyView>{}
class MyFragment : BaseFragment<MyView, MyPresenter>() {
override fun getPassiveView(): MainBaseView {
return view as MainBaseView //Is this correct?
}
override fun getPresenter(): MainPresenter {
//How would I do this, I still need to inject the presenter into the fragment no?
}
}
I'm a bit rusty on the generics approach
Before I've just done something like
class SomeFragment : BaseFragment(), SomeView{
@Inject lateinit var mPresenter : SomePresenterImpl
//mPresenter.doStuff()
//In the presenter[
var view... on bind
doSomething() -> view.updateSomething()
}