06
Май
2017

Android MVP взаимодействие view и presenter

Прочитав статьи и просмотрев прилагающейся к ним код, так и не понял как правильно организовать взаимодействие view и presenter. Основная идея в том что presenter получает событие от view и реагирует на него. Т.е. нажата кнопка поиска в presenter передается событие onSearchButtonClicked и presenter загружает данные. Или Activity (View) создалась в presenter передается событие OnCreate выполняется загрузка данных. Можно ли выполнять метод presentera loadData() напрямую из view, а не передать сперва событые в отдельный метод presentera и потом уже в presenter`е вызвать loadData()?

Первый вариант

class MyActivity extends Activity {

    Presenter presenter = new Presenter();

    @Override
    void onCreate() {
        super.onCreate();
        presenter.onCreate();
    }
}

class Presenter {
    void loadData() {
        // load something
    }

    void onCreate() {
        loadData();
    }
}

Второй вариант

class MyActivity extends Activity {

    Presenter presenter = new Presenter();

    @Override
    void onCreate() {
        super.onCreate();
        presenter.loadData();
    }
}

class Presenter {
    void loadData() {
        // load something
    }
}

Источник: https://ru.stackoverflow.com/questions/662851/android-mvp-%D0%B2%D0%B7%D0%B0%D0%B8%D0%BC%D0%BE%D0%B4%D0%B5%D0%B9%D1%81%D1%82%D0%B2%D0%B8%D0%B5-view-%D0%B8-presenter

Share

Тебе может это понравится...