Инъекция кинжала во фрагмент - PullRequest
0 голосов
/ 08 ноября 2018

Я использовал Dagger 2 в своем проекте, и он отлично работает в делах. Но когда я использую то же самое во фрагментах, иногда мой ведущий становится нулевым, когда я внедряю кинжал в метод onAttach (). Затем, когда я переместил инъекцию внутрь onCreateView (), я не столкнулся с этой проблемой. Но это правильный способ ввести в onCreateView () ???

@Inject
ChatFavouritesPresenter chatFavouritesPresenter;

@Override
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.chat_fragment_history, container, false);
    ButterKnife.bind(this, view);
    injectPresenter();
    return view;
}

 private void injectPresenter() {
    if (chatFavouritesPresenter == null) {
        ActivityComponent component = getActivityComponent();
        if (component != null) {
            component.inject(this);
            if (chatFavouritesPresenter != null) {
                chatFavouritesPresenter.onAttach(this);
            }
        }
    }

}
...