InjectPresenter не работает в Activity с библиотекой Moxy - PullRequest
0 голосов
/ 12 июля 2020

Я создаю приложение MVP android с библиотекой Moxy, но когда я пытаюсь вызвать метод из ведущего в действии, у меня возникает ошибка lateinit property mainPresenter has not been initialized

Код интерфейса My View

@StateStrategyType(AddToEndSingleStrategy::class)
interface MainView : MvpView {

fun startLoading()
fun endLoading()
fun showError(message: String)
fun getResult(textFromPresenter: String)

}

Presenter:

@InjectViewState
class MainPresenter : MvpPresenter<MainView>() {

fun getText() {
    viewState.startLoading()
    viewState.endLoading()
    viewState.getResult("Text from Presenter")

}

}

и Activity:

lass MainActivity : MvpAppCompatActivity(), MainView {

@InjectPresenter
lateinit var mainPresenter: MainPresenter


override fun onCreate(savedInstanceState: Bundle?) {

    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)
    button.setOnClickListener { mainPresenter.getText() }

}
//all implementation methods
  

и gradle:

implementation 'tech.schoolhelper:moxy-x:1.7.0'
implementation 'tech.schoolhelper:moxy-x-androidx:1.7.0'
annotationProcessor 'com.arello-mobile:moxy-compiler:1.5.5'
...