You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android Studio中Kotlin DataBinding报错<expr> expected, got ''求助

解决DataBinding中<expr> expected, got ''报错问题

你的报错是因为DataBinding表达式里直接用单引号包裹字符串字面量,XML解析器和DataBinding表达式引擎无法正确识别这种写法。以下是修正后的代码:

第一行代码的两种修正方式

  • 方式一:用XML转义双引号包裹字符串
android:text="@{String.valueOf(detailedPostVM.postLiveData.likedUsers.size) + &quot;people liked&quot;}"
  • 方式二:用String.format更简洁(推荐)
android:text="@{String.format(&quot;%d people liked&quot;, detailedPostVM.postLiveData.likedUsers.size)}"

第二行代码修正

android:text="@{detailedPostVM.alreadyLiked ? &quot;LIKED&quot; : &quot;LIKE&quot;}"

补充说明

在DataBinding的XML表达式中,字符串字面量必须用双引号定义,但由于外层属性已经使用了双引号,所以内层需要用XML转义字符&quot;来替代双引号,这样解析器才能正确识别表达式中的字符串部分,避免语法错误。

内容的提问来源于stack exchange,提问作者Emre Dursun

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 11:03:11