我正在尝试添加应用程序全局自定义@BindingAdapter
。我创建了TextViewBinding.kt
文件,并将其放入单独的包com.my.app.binding.TextViewBinding
中。编译应用程序时,出现错误
错误:找不到符号 TextViewAdapterKt.setTypeface(this.titleTextView,seenJavaLangStringNormalJavaLangStringBold);
如果将适配器功能放入活动中,则没有错误。但是,因为它是应用程序全局适配器,所以我不希望它属于任何特定视图。那么,我应该在哪里放置适配器函数以摆脱错误?
TextViewAdapter.kt
@BindingAdapter("typeface")
fun TextView.setTypeface(style: String) {
when (style) {
"bold" -> setTypeface(null, Typeface.BOLD)
else -> setTypeface(null, Typeface.NORMAL)
}
}
my_list_item.xml
...
<TextView app:typeface='@{viewed ? "normal" : bold"}' ... />
...
答案 0 :(得分:0)
最后,我找到了错误原因。我只是忘记将软件包声明添加到TextViewAdapter.kt
文件的顶部。