Как добавить базовый класс в MOSBY MVPActivity?
Я ищу способ добавить базовый класс в MOSBY MVPActivity. Позвольте мне объяснить, что мне нужно.
Обычно при использовании mosby мы объявляем активность следующим образом:
public class LoginActivity extends MVPActivity<LoginView, LoginPresenter> {
//...
}
но я хотел бы добавить базовый класс, чтобы я мог делать вызовы так:
public class LoginActivity extends BaseActivity<LoginView, LoginPresenter> {
//...
}
и тогда BaseActivity будет выглядеть так:
abstract class BaseActivity<T, P> extends MvpActivity<T extends MvpView, P> {
}
но это не работает, так как в среде IDE во время компиляции возникает ошибка, говорящая о том, что у "extends MvpView" неожиданные границы. Итак, как я могу добавить базовый класс в MOSBY MVPActivity?
1 ответ
Решение
Вы должны применить общие параметры с вашим расширенным определением класса и определить его с расширением.
abstract class BaseActivity<V extends MvpView, P extends MvpPresenter<V>>
extends MvpActivity<V, P> { }