Переопределить макет с помощью привязки данных на Android

Я создаю библиотеку Android с функциями привязки данных, но я хочу, чтобы другие приложения использовали мою библиотеку и перезаписывали некоторые макеты (созданные с привязкой данных), но когда эти приложения перезаписывают эти макеты, возникает исключение приведения класса во время инициализации моего фрагмента.

Что-то типа:

public abstract class FragmentQuestionsBinding extends ViewDataBinding **implements SomeInterfaceHere** {
...
}

Есть ли способ «взаимодействия» с классом DataBinding, чтобы перезаписать его макет в приложении, избегая этого исключения приведения класса?


person Alex    schedule 10.04.2019    source источник


Ответы (1)


Итак, ответ был здесь https://developer.android.com/topic/libraries/data-binding/generated-binding#custom_binding_class_names.

Мне нужно было указать исходный класс Binding в теге моего переопределенного макета.

<data class="com.package.databinding.FragmentQuestionsBinding">
</data>
person Alex    schedule 10.04.2019
comment
К сожалению, это создает класс с заданным именем, но тогда есть повторяющиеся классы... - person myfknoll; 20.08.2019