lib*_*oom 6 data-binding android
我在将 dataBinding 与 google codelab 一起使用时遇到了麻烦。
当我尝试使用以下功能时发生了这种情况。
@BindingAdapter("app:hideIfZero")
fun hideIfZero(view: View, number: Int) {
view.visibility = if (number == 0) View.GONE else View.VISIBLE
}
Run Code Online (Sandbox Code Playgroud)
我像下面的代码一样在 xml 中调用它。
<ProgressBar
...
app:hideIfZero="@{viewmodel.likes}"
... />
Run Code Online (Sandbox Code Playgroud)
viewModel 如下所示。
class SimpleViewModel : ViewModel() {
...
private val _likes = MutableLiveData(0)
...
var likes: LiveData<Int> = _likes
Run Code Online (Sandbox Code Playgroud)
我已经尝试删除 Android Studio 生成的所有缓存,
但它没有按我的意图工作。
所以我认为我错过了一个问题。
我试过这个代码实验室https://codelabs.developers.google.com/codelabs/android-databinding/#7
和我的存储库在这里https://github.com/libliboom/codelab-data-binding
谁让我知道这个问题?
最后,我通过以下链接解决了我报告的问题。
https://github.com/googlecodelabs/android-databinding/issues/11
您应该添加“kotlin-kapt”,即注释处理器。
很难把这个问题弄清楚。
我还在下面的链接中更新了与此问题相关的存储库。
https://github.com/libliboom/codelab-data-binding/commit/a98e3dc6079f542a49698a4d717b71ad4737dfdf
我希望有一天它能帮助那些为此苦苦挣扎的人。
祝你好运!
归档时间: |
|
查看次数: |
5636 次 |
最近记录: |