您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
在 OpenHarmony(开放鸿蒙)中,ListView 组件的数据绑定可以通过以下步骤实现:
public class Item {
private String title;
private String description;
public Item(String title, String description) {
this.title = title;
this.description = description;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
}
import java.util.ArrayList;
import java.util.List;
public class DataSource {
private List<Item> items = new ArrayList<>();
public DataSource() {
// 添加一些示例数据
items.add(new Item("标题1", "描述1"));
items.add(new Item("标题2", "描述2"));
// ... 添加更多数据
}
public List<Item> getItems() {
return items;
}
}
import ohos.aafwk.ability.AbilitySlice;
import ohos.aafwk.content.Intent;
import ohos.agp.components.Component;
import ohos.agp.components.ListContainer;
import ohos.agp.components.ListItem;
import ohos.agp.components.LayoutScatter;
import ohos.agp.components.Text;
import ohos.data.DataProvider;
import ohos.data.DataProviderListener;
import ohos.data.ListDataProvider;
public class MyAbilitySlice extends AbilitySlice {
private ListContainer listView;
private DataSource dataSource;
@Override
public void onStart(Intent intent) {
super.onStart(intent);
super.setUIContent(LayoutScatter.getInstance(this).parse(ResourceTable.Layout_ability_main, null, false));
listView = (ListContainer) findComponentById(ResourceTable.Id_list_view);
dataSource = new DataSource();
ListDataProvider dataProvider = new ListDataProvider(dataSource.getItems());
listView.setDataProvider(dataProvider);
dataProvider.addDataListener(new DataProviderListener() {
@Override
public void onDataChanged(int position, int count) {
// 数据发生变化时,ListView 会自动刷新
}
}, this);
}
}
注意:上述代码中的 ResourceTable.Layout_ability_main
和 ResourceTable.Id_list_view
是你在资源文件中定义的布局和组件 ID。
ability_main.xml
文件中:<?xml version="1.0" encoding="utf-8"?>
<DirectionalLayout
xmlns:ohos="http://schemas.huawei.com/res/ohos"
ohos:height="match_parent"
ohos:width="match_parent"
ohos:orientation="vertical">
<ListContainer
ohos:id="$+id:list_view"
ohos:height="match_parent"
ohos:width="match_parent"/>
</DirectionalLayout>
这样,当 ListView 组件加载时,它将使用你提供的数据源和适配器来显示数据。当数据源中的数据发生变化时,ListView 将自动刷新以显示最新的数据。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。