Какая альтернатива AppBarLayout $ ScrollingViewBehavior в AndroidX?

Недавно я перенес свой проект на AndroidX. Теперь, когда я открываю определенную страницу приложения с кодом ниже, приложение вылетает.

<androidx.constraintlayout.widget.ConstraintLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="fill_vertical"
    android:clipToPadding="false"
    app:layout_behavior="android.support.design.widget.AppBarLayout$ScrollingViewBehavior"
    >

Ошибка в Logcat:

android.view.InflateException: Binary XML file line #119: Could not inflate Behavior subclass android.support.design.widget.AppBarLayout$ScrollingViewBehavior
    Caused by: java.lang.RuntimeException: Could not inflate Behavior subclass android.support.design.widget.AppBarLayout$ScrollingViewBehavior

Я думаю, что должен заменить это поведение альтернативой в AndroidX. Но что это за альтернативный код? Я искал в https://developer.android.com/jetpack/androidx/migrate. Но не нашел AppBarLayout.

Заранее спасибо.


person DrMorteza    schedule 30.10.2018    source источник


Ответы (2)


Я нашел решение. Строку layout_behavior необходимо заменить на это:

app:layout_behavior="com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior"

убедитесь, что в build.gradle существует "материальная" зависимость:

implementation 'com.google.android.material:material:1.2.1'
person DrMorteza    schedule 30.10.2018
comment
Спасибо @Doctor Генри :) - person Damiii; 04.01.2019
comment
ОТЛИЧНО, спасибо. Это помогло мне завершить переход на AndroidX. - person tm1701; 17.08.2019

В моем случае я использовал это:

app:layout_behavior="@string/appbar_scrolling_view_behavior"

также не забудьте добавить эту зависимость:

implementation 'com.google.android.material:material:1.0.0'
person Juan Carlos Carrillo    schedule 25.02.2020