android项目实战之数据绑定表达式

前言

android项目开发过程,数据绑定常见功能,比较复杂的需求需要表达式来实现完成

目标

  1. 基础知识

表达式语言中使用以下运算符和关键字:

  • 算术运算符 + - / * %
  • 字符串连接运算符 +
  • 逻辑运算符 && ||
  • 二元运算符 & | ^
  • 一元运算符 + - ! ~
  • 移位运算符 >> >>> <<
  • 比较运算符 == > < >= <=(请注意,< 需要转义为 &lt;
  • instanceof
  • 分组运算符 ()
  • 字面量运算符 - 字符、字符串、数字、null
  • 类型转换
  • 方法调用
  • 字段访问
  • 数组访问 []
  • 三元运算符 ?:
  1. 使用组合类型

可使用 [] 运算符访问常见集合,例如数组、列表、稀疏列表和映射。要使 XML 不含语法错误,您必须转义 < 字符。例如:不要写成 List<String> 形式,而是必须写成 List&lt;String>

复制代码
<data>
        <import type="android.util.SparseArray"/>
        <import type="java.util.Map"/>
        <import type="java.util.List"/>
        <variable name="list" type="List&lt;String>"/>
        <variable name="sparse" type="SparseArray&lt;String>"/>
        <variable name="map" type="Map&lt;String, String>"/>
        <variable name="index" type="int"/>
        <variable name="key" type="String"/>
    </data>
    ...
    android:text="@{list[index]}"
    ...
    android:text="@{sparse[index]}"
    ...
    android:text="@{map[key]}"

欢迎点赞、收藏、评论

相关推荐
代码s贝多芬的音符20 小时前
android mlkit 实现仰卧起坐和俯卧撑识别
android
jwn99921 小时前
Laravel9.x核心特性全解析
android
今天又在写代码21 小时前
数据智能分析平台部署服务器
android·服务器·adb
梦里花开知多少1 天前
深入谈谈Launcher的启动流程
android·架构
jwn9991 天前
Laravel11.x新特性全解析
android·开发语言·php·laravel
我就是马云飞1 天前
停更5年后,我为什么重新开始写技术内容了
android·前端·程序员
stevenzqzq1 天前
Kotlin 协程:withContext 与 async 核心区别与使用场景
android·开发语言·kotlin
唔661 天前
原生 Android(Kotlin)仅串口「侵入式架构」完整案例三
android·架构·kotlin
唔661 天前
原生 Android(Kotlin)仅串口「可插拔架构」完整案例一
android·架构·kotlin
Melrose1 天前
移动端安全攻防
android·前端·安全