是的,Android Data Binding 支持复杂数据。从 Data Binding Library 3.0 开始,您可以将复杂数据对象(例如,包含多个属性和方法的 Java 或 Kotlin 类)与 UI 组件绑定。
要在 Data Binding 中使用复杂数据,您需要执行以下步骤:
- 创建一个包含您要绑定到 UI 的属性和方法的复杂数据类。
例如,这是一个简单的 Java 类:
public class User { private String name; private int age; public User(String name, int age) { this.name = name; this.age = age; } public String getName() { return name; } public int getAge() { return age; } }
- 在您的布局文件中,使用
标签包装您的根视图,并定义一个变量来表示您的复杂数据对象。例如:
- 使用
标签中的部分定义的变量将复杂数据对象绑定到 UI 组件。例如,将用户的名字绑定到一个 TextView:
- 在您的 Activity 或 Fragment 中,将复杂数据对象设置为 Data Binding 布局的变量。例如,在 Activity 中:
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ActivityMainBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_main); User user = new User("John Doe", 30); binding.setUser(user); } }
现在,您的复杂数据对象已与 UI 组件绑定,您可以根据需要访问和处理数据。