簡體   English   中英

Android數據綁定三元運算符錯誤

[英]Android data binding ternary operator error

我正在嘗試使用像這樣的三元運算符中的ObservableInt與數據綁定來綁定ImageViewenabled值:

<variable
            name="myInt"
            type="android.databinding.ObservableInt"/>
...
<ImageView
        ...
        android:enabled='@{myInt > 1 ? false : true}'
        ...
        />

它完全按預期工作。

但是當我將表達式更改為

android:enabled='@{myInt < 1 ? false : true}'

它將引發以下編譯錯誤:

與元素類型“ ImageView”關聯的屬性“ android:enabled”的值不得包含“ <”字符。

為什么我要檢查myInt是否大於1,但不能檢查是否小於1?

您需要為xml轉義字符,如下所示:

android:enabled="@{myInt &lt; 1 ? false : true}"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM