SlideListView 配置项说明文档
概述
SlideListView是一个可左右/上下滑动的定宽/高列表组件,支持从dataDict字典中读取配置项进行初始化设置。本文档详细说明了所有支持的配置项及其格式和含义。
配置项列表
1. scroll-direction(滚动方向)
- 键名:
scroll-direction - 格式: 字符串
- 可选值:
Vertical- 垂直滚动Horizontal- 水平滚动VerticalAndHorizontal- 垂直和水平滚动
- 默认值:
Vertical - 说明: 设置列表的滚动方向。该值不区分大小写,会被自动转换为枚举值。
2. item-size(项目尺寸)
- 键名:
item-size - 格式: 整数
- 单位: 像素
- 说明: 设置列表项的固定尺寸。垂直滚动时表示高度,水平滚动时表示宽度。
- 示例:
"40"表示每个列表项高度/宽度为40像素
3. capacity(容量)
- 键名:
capacity - 格式: 整数
- 默认值:
1 - 说明: 设置每行/每列可容纳的列表项数量。例如,当设置为3时,每行将显示3个列表项。
4. v-slidable(垂直滑动)
- 键名:
v-slidable - 格式: 布尔值(字符串形式)
- 可选值:
"true"- 启用垂直滑动"false"- 禁用垂直滑动
- 默认值:
true - 说明: 控制是否允许垂直方向的滑动操作。
5. h-slidable(水平滑动)
- 键名:
h-slidable - 格式: 布尔值(字符串形式)
- 可选值:
"true"- 启用水平滑动"false"- 禁用水平滑动
- 默认值:
false - 说明: 控制是否允许水平方向的滑动操作。
6. scroller-size(滚动条尺寸)
- 键名:
scroller-size - 格式: 整数
- 单位: 像素
- 默认值:
24 - 说明: 设置滚动条的宽度(垂直滚动条)或高度(水平滚动条)。
- 示例:
"16"表示滚动条宽度/高度为16像素
7. dragger-icon(拖拽图标)
- 键名:
dragger-icon - 格式: 字符串(资源路径)
- 说明: 设置滚动条拖拽按钮的图标路径。该路径指向一个纹理资源,将被同时应用于垂直和水平滚动条的拖拽按钮。
- 示例:
"UI/Icons/scrollbar_dragger"表示使用指定路径的纹理作为拖拽按钮图标
8. elasticity(弹性比例)
- 键名:
elasticity - 格式: 字符串(两个浮点数,以空格分隔)
- 说明: 设置滚动视图的弹性比例,用于控制滚动超出边界时的回弹效果。第一个值表示水平方向的弹性比例,第二个值表示垂直方向的弹性比例。
- 示例:
"0.1 0.2"表示水平方向弹性比例为0.1,垂直方向弹性比例为0.2
使用示例
XML配置示例
<SlideListView name="SkillList" scroller-size="50" elasticity="0 0.1" item-size="63" onLoad="加载脚本" style="left: 18px; top: 88px; width: 311px; height: 373px;">
<VisualElement name="SkillListItem" class="list-item-template" style="width: 310px; height: 63px; font-size: 16px;">
<VisualElement name="SkillIcon" style="left: 5px; top: 5px; width: 54px; height: 54px;" />
<Label name="SkillName" style="left: 77px; top: 2px; width: 85px; height: 29px;" onClick="lua.go();" />
<Label name="SkillLevel" style="left: 201px; top: 2px; width: 100px; height: 29px;" />
<Label name="SkillExp" style="left: 123px; top: 34px; width: 100px; height: 29px;" />
<VisualElement name="LevelIcon" style="left: 174px; top: 10px; width: 21px; height: 13px; background-image: Share/Img/DefaultUI/CharStat/State_00208.png;" />
<VisualElement name="ExpIcon" style="left: 88px; top: 41px; width: 30px; height: 17px; background-image: Share/Img/DefaultUI/CharStat/State_00203.png;" />
</VisualElement>
</SlideListView>注意事项
- 所有配置项都是可选的,未提供的配置将使用默认值。
- 布尔值配置项需要以字符串形式提供(”true”/“false”)。
- 数值配置项需要以字符串形式提供,系统会自动进行类型转换。
- 如果提供了无效的配置值,系统将忽略该配置项并使用默认值。
- dragger-icon路径指向的资源需要通过ResourceManager加载,确保资源路径正确且资源存在。
- elasticity配置项需要提供两个浮点数,以空格分隔,分别表示水平和垂直方向的弹性比例。如果只提供一个值,将不会应用该配置。
- onLoad配置项需要提供一个字符串,用于指定加载完成后的回调函数。如果未提供该配置项,将不会触发任何回调函数。建议在onLoad回调函数中通过LuaInterface.SetListViewBinder(SlideListView ve, Action<VisualElement, int> method)方法和LuaInterface.SetListViewUnbinder(SlideListView ve, Action<VisualElement, int> method)方法设置列表项的绑定器,以确保数据正确显示。前者会在列表的显示区域中出现新元素时被调用,后者会在元素从列表显示区域中移除时调用。
- 需设置列表的ItemCount属性指定列表中存在的元素数量。
- 触发动作包含
点击 onclick
双击 ondbclick
长按 onlongpress
加载 onload
清除 onunload
显示 onshow
隐藏 onhide - picking-mode: Ignore; 禁止点击
LuaInterface.SetListViewBinder(ve,abc)
function abc(ve,i)
local skillName = ve:Find(“SkillIcon Label”)
skillName:SetStyle(“技能名称”,”烈火剑法”)
end
–lua.go()
function go()
local SkillName = target:GetData(“技能名称”)
print(SkillName);
end
作者:yilin01 创建时间:2025-11-26 16:03
最后编辑:yilin01 更新时间:2025-12-08 16:51
最后编辑:yilin01 更新时间:2025-12-08 16:51