You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

sap.m.List:移除分隔线并为每个列表项添加项目符号

解决sap.m.List显示权限列表无分隔线并改为行内/纯文本排列的方法

我来帮你调整这个列表的显示效果,分两种场景给你具体方案:

场景1:实现「权限:项目1 项目2 项目3」的行内展示

如果想把权限项改成一行的文本串联展示,其实不用sap.m.List也能轻松实现,但如果要基于现有List改造的话,可以这么做:

  1. 移除分隔线:给List添加separator="None"属性,直接去掉每个列表项的水平分隔线。
  2. 行内布局调整:把列表项的内容换成sap.m.Text组件,设置行内显示,同时在列表头部加上「权限:」的前缀。

示例代码片段:

<List id="PermissionsList" noDataText="NoPermissions" includeItemInSelection="true" 
      items="{PermissionsList>/}" separator="None">
  <headerToolbar>
    <Toolbar>
      <Title text="权限:" />
    </Toolbar>
  </headerToolbar>
  <items>
    <StandardListItem>
      <content>
        <Text text="{PermissionsList>name}" class="sapUiInline" />
      </content>
    </StandardListItem>
  </items>
</List>

再补一点CSS让项之间有合适的间距:

.sapUiInline {
  margin-right: 8px;
}

场景2:无分隔线的纯文本上下排列

如果只是想去掉分隔线,保持每项单独一行但没有横线,操作更简单:
只需要给List添加separator="None"属性,再可选调整列表项的样式,让它更贴近纯文本的视觉效果。

示例代码:

<List id="PermissionsList" noDataText="NoPermissions" includeItemInSelection="true" 
      items="{PermissionsList>/}" separator="None" class="permission-text-list">
  <headerToolbar>
    <Toolbar>
      <Title text="权限" />
    </Toolbar>
  </headerToolbar>
  <items>
    <StandardListItem title="{PermissionsList>name}" description="" />
  </items>
</List>

可选CSS优化:

.permission-text-list .sapMLIB {
  border: none;
  padding: 4px 0; /* 调整上下间距,弱化列表项的卡片感 */
}

另外,要是追求更轻量化的纯文本展示,也可以考虑用sap.m.VBox直接包裹多个sap.m.Text控件,这种方案比List更适合纯文本场景哦。

内容的提问来源于stack exchange,提问作者THI

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 07:10:37