0

我的代码中几乎没有自定义视图,我在布局文件中使用它们。对于 AppBArLayout 中的 ex- ExpandableAppBarBehavior

  <com.google.android.material.appbar.AppBarLayout
        android:id="@+id/app_bar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:fitsSystemWindows="true"
        app:expanded="false"
        android:background="#1CF2F2"
        app:layout_behavior=".views.ExpandableAppBarBehavior"
        >

到目前为止它工作正常,但是当我使用新的 applicationId com.example.flavor1 创建一个新风格时,它开始在运行时出错。

要包含我放的默认包中的资源

javaCompileOptions {
            annotationProcessorOptions {
                arguments = ["resourcePackageName": "com.example"]
            }
        }

在 build.gradle

但在运行时它给出一个错误:

java.lang.RuntimeException: Could not inflate Behaviour subclass com.example.flavor1.views.ExpandableAppBarBehavior

你能告诉我我在这里做错了什么吗?

4

1 回答 1

1

只是为了帮助某人,如果有人遇到同样的问题,我会通过提供自定义类的完整路径来解决它

 <com.google.android.material.appbar.AppBarLayout
        android:id="@+id/app_bar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:fitsSystemWindows="true"
        app:expanded="false"
        android:background="#1CF2F2"
        app:layout_behavior="com.example.views.ExpandableAppBarBehavior"
        >

这里要记住,我们必须提供默认的 applicationId。

于 2020-09-04T07:49:37.873 回答