Почему метод getOnBackPressedDispatcher () остается неразрешенным до тех пор, пока в качестве зависимости не будет добавлен androidx.navigation: navigation-ui? - PullRequest
0 голосов
/ 24 октября 2019

Я пытаюсь настроить onBackPress поведение JetPack Navigation. Хотя я нашел решение Мне просто любопытно, что происходит за кулисами в следующем сценарии:

Начальное состояние моей деятельности:

MyActivity extends androidx.appcompat.app.AppCompatActivity {
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        getOnBackPressedDispatcher().addCallback(...);  // <--- Method is unresolved
    }
}

Почему это так? после добавления следующей зависимости в build.gradle метод getOnBackPressedDispatcher() разрешается:

implementation 'androidx.navigation:navigation-fragment:2.1.0'
implementation 'androidx.navigation:navigation-ui:2.1.0'

Что происходит за кулисами? Это имеет что-то с Jetifier? Изменяет ли это классы на основе объявленных зависимостей или что-то подобное?

...