Android ViewBindings для динамических c функций - PullRequest
1 голос
/ 04 марта 2020

Так получилось, что у меня есть основной модуль приложения

build.gradle

    dynamicFeatures = [":myFeature"]

    viewBinding {
        enabled = true
    }

AdroidManifest. xml

package="com.mydomain.testproject"

С некоторыми распространенными макетами, которые я использую в приложении, например: app/res/error_view.xml

И у меня есть файлы динамических c объектов

build.gradle

    viewBinding {
        enabled = true
    }

AdroidManifest. xml

package="com.mydomain.testproject.myFeature"

myfeature_fragment. xml

    <include
        android:id="@+id/error_view"
        layout="@layout/error_view"
        android:visibility="gone" />

MyFeatureFragment.kt

binding = MyFeatureFragmentBinding.bind(view)

и здесь возникает проблема. Когда я пытаюсь получить доступ к binding.errorView AS показывает ошибку Cannot access class 'com.mydomain.testproject.myFeature.databinding.ErrorViewBinding'. Check your module classpath for missing or conflicting dependencies

Странно, когда я проверяю сгенерированный класс MyFeatureFragmentBinding, он содержит следующий

  @NonNull
  public final View errorView;

Так что я думаю, AS знает больше, чем показывает для меня. Также я нашел в сгенерированных классах основного модуля оригинальные ErrorViewBinding и OF C, от которых он работает безупречно.

Кто-то сумел сослаться на общий макет из другого функционального модуля?
или как можно Принудительно установить тип сгенерированной привязки общего вида?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...