android:onClickListener 未找到
android:onClickListener not found
我正在看下一本书"Exploring Android"版本0.7https://commonsware.com/AndExplore/
及其 Android 示例项目使用数据绑定库
所以只有一种布局,它包含行 android:onClickListener="@{(v) -> holder.onRowClick.invoke(model)}">
:
<androidx.constraintlayout.widget.ConstraintLayout
android:onClickListener="@{(v) -> holder.onRowClick.invoke(model)"
android:layout_width="match_parent"
android:layout_height="wrap_content">
但它不会编译。
* What went wrong:
Execution failed for task ':app:processDebugResources'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
> Android resource linking failed
res\layout\todo_row.xml:13: AAPT: error: attribute android:onClickListener not found.
但有些这样的听众是有效的,例如android:onCheckedChanged
,尽管 Android Studio 显示警告:
我不太喜欢这一切(lambdas,xml 中的函数)但似乎 Android 允许其中的一些并且它可以用于编写基于 MVVM 的应用程序
那么为什么 android:onCheckedChanged
工作并且 android:onClickListener
我得到 "not found" 错误?
你应该尝试 android:onClick="@{(v) -> holder.onRowClick.invoke(model)"
而不是 android:onClickListener="@{(v) -> holder.onRowClick.invoke(model)"
你最终错过了 }
。
应该是
android:onClickListener="@{(v) -> holder.onRowClick.invoke(model)}"
我正在看下一本书"Exploring Android"版本0.7https://commonsware.com/AndExplore/
及其 Android 示例项目使用数据绑定库
所以只有一种布局,它包含行 android:onClickListener="@{(v) -> holder.onRowClick.invoke(model)}">
:
<androidx.constraintlayout.widget.ConstraintLayout
android:onClickListener="@{(v) -> holder.onRowClick.invoke(model)"
android:layout_width="match_parent"
android:layout_height="wrap_content">
但它不会编译。
* What went wrong:
Execution failed for task ':app:processDebugResources'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
> Android resource linking failed
res\layout\todo_row.xml:13: AAPT: error: attribute android:onClickListener not found.
但有些这样的听众是有效的,例如android:onCheckedChanged
,尽管 Android Studio 显示警告:
我不太喜欢这一切(lambdas,xml 中的函数)但似乎 Android 允许其中的一些并且它可以用于编写基于 MVVM 的应用程序
那么为什么 android:onCheckedChanged
工作并且 android:onClickListener
我得到 "not found" 错误?
你应该尝试 android:onClick="@{(v) -> holder.onRowClick.invoke(model)"
而不是 android:onClickListener="@{(v) -> holder.onRowClick.invoke(model)"
你最终错过了 }
。
应该是
android:onClickListener="@{(v) -> holder.onRowClick.invoke(model)}"