#java #android-studio #android-fragments #androidx #deprecation-warning
#java #android-studio #android-фрагменты #androidx #устаревание -предупреждение
Вопрос:
После реализации приведенной ниже зависимости в Gradle уровня приложения
implementation "androidx.fragment:fragment:1.3.0-beta02"
implementation "androidx.activity:activity:1.2.0-beta02"
Я нашел приведенное ниже предупреждение в своем фрагменте в методе onActivityCreated
Overrides deprecated method in 'androidx.fragment.app.Fragment'
Каким может быть новый способ реализации этого метода. Ниже приведен мой метод onActivityCreated
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
mainViewModel = new ViewModelProvider(this).get(MainViewModel.class);
}
Я использую зависимость для requestPermissionLauncher.
Ответ №1:
Вы можете более подробно ознакомиться с предупреждением об изменении / устаревании здесь: https://developer.android.com/jetpack/androidx/releases/fragment#1.3.0-alpha02
В частности
Метод onActivityCreated() теперь устарел. Код, касающийся представления фрагмента, должен выполняться в onViewCreated() (который вызывается непосредственно перед onActivityCreated()), а другой код инициализации должен быть в onCreate() .
Изменение вашего кода на приведенный ниже пример должно удалить предупреждение об устаревании:
@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
mainViewModel = new ViewModelProvider(this).get(MainViewModel.class);
}