gpt4 book ai didi

android - 双向绑定(bind)无法解析 java.lang.String 属性的 setter

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:27:10 25 4
gpt4 key购买 nike

我正在玩 Android Studio 2.1 AFIK 中引入的数据绑定(bind) API 的双向绑定(bind)。

我得到这个有趣的错误:

Error:Execution failed for task ':app:compileDebugJavaWithJavac'.
> java.lang.RuntimeException: Found data binding errors.
****/ data binding error ****msg:The expression address.street cannot cannot be inverted: Two-way binding cannot resolve a setter for java.lang.String property 'street'
file:/path/to/layout.xml
loc:34:37 - 34:50 ****\ data binding error ****

当我尝试用谷歌搜索那个错误时,我只找到一个 4 天前的日本 Twitter 帖子,发自一个正在为它哭泣的人......

<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/edit_hint_zip"
android:text="@={address.zip}"
tools:text="12345"/>

address.zip 是一个String。我猜测这里的问题是 CharSequenceString 作为 EditText.getText() 的返回值。

我的想法是定义它,但这对我不起作用:

@NonNull
@InverseBindingAdapter(attribute = "text")
public static String getText(EditText edit) {
return edit.getText().toString();
}

我错过了什么?

最佳答案

如果您使用的是 kotlin ,请确保将用于双向绑定(bind)的数据类字段声明为 var。如果是val不支持双向绑定(bind)

关于android - 双向绑定(bind)无法解析 java.lang.String 属性的 setter ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36959217/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com