我想在元素完全显示来自odata服务的绑定数据时触发事件。
哪个事件适合那个?
请注意,可能会发生odata加载,而在元素内部显示数据需要一些时间。
var oObjectListItem = new sap.m.ObjectListItem();
var aItems = [
"title",
"number",
"numberUnit",
"intro",
"icon",
"activeIcon",
"iconDensityAware",
"markFavorite",
"markFlagged",
"showMarkers",
"numberState",
"titleTextDirection",
"introTextDirection",
"numberTextDirection",
"markLocked",
"type",
"visible",
"unread",
"selected",
"counter"
];
for (var k = 0; k < aItems.length; k++) {
if (typeof this._aTabs[i].oTabHeaderBindingInfos[aItems[k]] === "object" && this._aTabs[i].oTabHeaderBindingInfos[aItems[k]]) {
oObjectListItem.bindProperty(aItems[k], this._aTabs[i].oTabHeaderBindingInfos[aItems[k]]);
} else if (this._aTabs[i].oTabHeaderBindingInfos[aItems[k]]) {
oObjectListItem.setProperty(aItems[k], this._aTabs[i].oTabHeaderBindingInfos[aItems[k]]);
}
}
答案 0 :(得分:1)
正如聊天所讨论的那样: 我们将编写自己的onAfterRendering方法:
oControl.addEventDelegate({
"onAfterRendering": function(){
console.log('called');
// Custom Logic
}
})
oControl是你的ObjectListItem。
注意:它会调用两次。没有数据的第一次和bindng完成时的第二次
让我知道这是否有效