#Fragment #ViewModel #Jetpack
Fragment 1.2.0
👉 FragmentContainerView - новая
👉 Изменение используемой по умолчанию фабрики для создания
👉
👉 Новые проверки Android Lint: теперь проверяется правильность использования
👉
👉
Fragment 1.2.0
👉 FragmentContainerView - новая
ViewGroup
, предназначенная специально для размещения в ней Fragment
. Она исправляет проблемы с анимациями при выполнение транзакций. Забудь о FrameLayout
или <fragment>
, теперь только FragmentContainerView
.👉 Изменение используемой по умолчанию фабрики для создания
ViewModel
по аналогии с Activity 1.1.0👉
Fragment.onDestroyView()
теперь вызывается только после окончания анимации/transition👉 Новые проверки Android Lint: теперь проверяется правильность использования
getViewLifecycleOwner()
👉
Fragment.getFragmentManager()
переименовано в Fragment.getParentFragmentManager()
👉
FragmentManager
теперь поддерживает операции (add/replace и др.) с Fragment
по их классу, в дополнение к заранее созданному объекту. Это улучшает поддержку возможности по интеграции DI в конструктор Fragment
.#ArchitectureComponent #ViewModel #Lifecycle #Coroutines
Lifecycle 2.2.0
Много новых интеграций с Kotlin Coroutines:
👉 Конвертация
👉 liveData { } - генератор значений с помощью Coroutine, которые доставляются через
👉 LifecycleCoroutineScope - специальный
👉 suspend функции, связанные с
Но помимо этого
👉 Теперь вместо
👉 Gradle Incremental Annotation Processor: Теперь вместо аннотирования методов, который должны вызываться на методы жизненного цикла, с помощью
Lifecycle 2.2.0
Много новых интеграций с Kotlin Coroutines:
👉 Конвертация
Flow
<-> LiveData
👉 liveData { } - генератор значений с помощью Coroutine, которые доставляются через
LiveData
👉 LifecycleCoroutineScope - специальный
CoroutineScope
, связанный с Lifecycle
. Он позволяет запускать Coroutine, когда Lifecycle
достигнет определенного состояния с помощью launchWhenCreated, launchWhenResumed и launchWhenStarted👉 suspend функции, связанные с
LifecycleOwner
и Lifecycle
, которые позволяют дождаться заданного состояния Lifecycle: whenCreated, whenStarted, whenResumed, whenStateAtLeast (только для Lifecycle
)Но помимо этого
👉 Теперь вместо
ViewModelProviders.of()
надо создавать ViewModelProvider
через конструктор👉 Gradle Incremental Annotation Processor: Теперь вместо аннотирования методов, который должны вызываться на методы жизненного цикла, с помощью
@OnLifecycleEvent
используйте DefautLifecycleObserver.