Odata 如何更改智能表SAPUI5中图标的文本

Odata 如何更改智能表SAPUI5中图标的文本,odata,sapui5,Odata,Sapui5,我正在尝试使用formatter将智能表中的状态值0,1转换为图标。到目前为止,我创建了自定义列,并用OData填充它,然后插入到智能表中 以下是我在自定义列的XML视图中的代码: </Column> </columns> <items> <ColumnListItem> <cells> <ObjectStatus text="{Status}" state="{path: 'Status', formatter: '.

我正在尝试使用formatter将智能表中的状态值0,1转换为图标。到目前为止,我创建了自定义列,并用OData填充它,然后插入到智能表中

以下是我在自定义列的XML视图中的代码:

</Column>
</columns>
<items>
<ColumnListItem>
 <cells>
  <ObjectStatus 
 text="{Status}" state="{path: 'Status', formatter: '.status'}" />
 </cells>
</ColumnListItem>
</items>
</Table>

我在chrome调试器中发现了这个错误,图标应该通过属性
图标
传递给
ObjectStatus
控件,而不是
状态
state
属性应包含一个字符串/文本值,该值将用作文本标签

格式化程序也可以简单得多。您可以将图标URL作为字符串传递,而不是传递URI:

status: function(Status) {
    if (Status === "0") {
        return "sap-icon://accept";
    } else {
        return "sap-icon://decline";
    }
}

图标应该使用属性
图标
,而不是
状态
传递给
对象状态
控件。
state
属性应包含一个字符串/文本值,该值将用作文本标签

格式化程序也可以简单得多。您可以将图标URL作为字符串传递,而不是传递URI:

status: function(Status) {
    if (Status === "0") {
        return "sap-icon://accept";
    } else {
        return "sap-icon://decline";
    }
}

这是将智能表自定义列中的状态值0,1,2更改为sapui5图标的解决方案

View.xml

<items>
<ColumnListItem >
<cells>
<ObjectStatus icon="{path: 'Status', formatter: '.status'}" />
</cells>
</ColumnListItem>
</items>

这是将智能表自定义列中的状态值0,1,2更改为sapui5图标的解决方案

View.xml

<items>
<ColumnListItem >
<cells>
<ObjectStatus icon="{path: 'Status', formatter: '.status'}" />
</cells>
</ColumnListItem>
</items>

谢谢你的帮助@jpenninkhof。你们是对的,我找到了解决方案并将其发布在这里。谢谢你们的帮助@jpenninkhof。你们是对的,我找到了解决方案并把它贴在这里。