У меня есть понимание MVP, что я пытаюсь конвертировать в Kotlin, но я придерживался обобщений - мне не удалось создать экземпляр объекта с неизвестным типом, который расширяет родительский класс презентатора.У меня есть интерфейс для докладчиков:
interface BasePresenter {
fun attachView(view: View)
fun detachView(view: View)
...}
И немного базового кода для фрагмента, который будет иметь докладчика.В Java это работает следующим образом:
abstract public class BaseFragmentWithPresenter<P extends BasePresenter> extends BaseFragment {
@Inject
protected P presenter;
Как вы можете видеть, в этом родительском классе я использую Dagger 2 для введения презентатора, и я также предопределил некоторую логику здесь:
public void onViewCreated(...) {
super.onViewCreated(view, savedInstanceState);
presenter.attachView(this);
}
Как это сделать в Котлине?Я читал о технике in \ out, но все равно не смог.