Можно ли использовать фрагмент как MvpView внутри Activity, используя Mosby

Можно ли использовать фрагмент как MvpView внутри Activity, используя Mosby?

Например, это урезанная версия TaskDetailActivity в проекте Google todo-mvp-dagger:

public class TaskDetailActivity extends AppCompatActivity {

    public static final String EXTRA_TASK_ID = "TASK_ID";

    @Inject TaskDetailPresenter mTaskDetailPresenter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.taskdetail_act);

        // Get the requested task id
        String taskId = getIntent().getStringExtra(EXTRA_TASK_ID);

        TaskDetailFragment taskDetailFragment = (TaskDetailFragment) getSupportFragmentManager()
                .findFragmentById(R.id.contentFrame);

        if (taskDetailFragment == null) {
            taskDetailFragment = TaskDetailFragment.newInstance(taskId);

            ActivityUtils.addFragmentToActivity(getSupportFragmentManager(),
                    taskDetailFragment, R.id.contentFrame);
        }

        // Create the presenter
        DaggerTaskDetailComponent.builder()
                .taskDetailPresenterModule(new TaskDetailPresenterModule(taskDetailFragment, taskId))
                .tasksRepositoryComponent(((ToDoApplication) getApplication())
                .getTasksRepositoryComponent()).build()
                .inject(this);
    }       

    ...

}

В примере кода фрагмент передается в TaskDetailPresenterModule в качестве экземпляра представления. Возможно ли это с помощью Mosby, и если да, то это хорошая практика? Можем ли мы поместить нашего докладчика в Activity и использовать фрагмент вместо Activity в качестве MvpView?

Я спрашиваю об этом, потому что мне также интересно, как Мосби обрабатывает активность с несколькими фрагментами внутри.

Спасибо за вашу помощь.

0 ответов

Другие вопросы по тегам