创建一个列表是很简单的任务。这有点困难,因为您想显示来自互联网的图像,因此您必须为此使用自定义类。下载WebImageView.cpp和WebImageView.h并将它们添加到/src
目录中(如果您想查看整个项目或按照我的步骤操作)。
在里面添加以下内容applicationui.cpp
以包含新类
#include "WebImageView.h"
并在里面ApplicationUI(bb::cascades::Application *app)
添加
qmlRegisterType<WebImageView>("org.labsquare", 1, 0, "WebImageView");
所以你的 QML 可以访问这个类。
这是一个完整的 QML 工作示例:
import bb.cascades 1.2
import bb.data 1.0
import org.labsquare 1.0
NavigationPane {
id: nav
Page {
Container {
ListView {
dataModel: dataModel
listItemComponents: [
ListItemComponent {
type: "item"
content: Container {
Label {
text: ListItemData.title
}
WebImageView {
url: "http://adev.si/files/"+ListItemData.picture
}
}
}
]
attachedObjects: [
GroupDataModel {
id: dataModel
grouping: ItemGrouping.None
},
DataSource {
id: dataSource
source: "http://adev.si/files/someData.json"
remote: true
onDataLoaded: {
dataModel.insertList(data.List1)
}
}
]
}
}
}
onCreationCompleted: {
dataSource.load();
}
}
我希望这会有所帮助。您还需要在 .pro 文件中使用它
LIBS += -lbbdata
QT += network
如果你愿意,你可以导入这个项目并使用它。