Rank = {}
Rank._rankType = 1 -- 排行榜类型页签
Rank._showDataType = 1 -- 排行榜展示数据类型 (人物1-4 英雄6-9 总 战 法 道)
Rank._showLevel = false
Rank._path = "res/private/rank_ui/rank_ui_win32/"
function Rank.main(type)
local parent = GUI:Attach_Parent()
if not parent t
🤖 回答引擎: 前端Lua |
🕒 时间: 2026-05-12 13:26:53 |
👁️ 阅读: 13
从你提供的代码来看,问题出在 `Rank.CreateListCell` 函数中处理 `showLvStr` 的逻辑上。
你的角色是10转50级,`data.Value` 返回的字符串 `showLvStr` 很可能是 `"1050"`。
根据你的代码逻辑:
```lua
if string.len(showLvStr) == 4 then
local firstPart = string.sub(showLvStr, 1, 2)
local secondPart = string.sub(showLvStr, 3, 4)
showLvStr = string.format("%s转%s级", firstPart, secondPart)
```
当 `showLvStr = "1050"` 时:
- `string.len(showLvStr)` 等于 4
- `firstPart = string.sub("1050", 1, 2)` 得到 `"10"`
- `secondPart = string.sub("1050", 3, 4)` 得到 `"50"`
- 最终 `showLvStr` 被格式化为 `"10转50级"`
所以显示结果是正确的 `"10转50级"`,而不是你期望的单独 `"10"`。
如果你只想显示转生等级(10转),那么需要修改数据处理逻辑。目前代码是把转生和普通等级拼接在一起显示的。
**建议修改:**
检查服务端返回的 `data.Value` 数据格式,或者修改前端显示逻辑,只提取转生部分进行显示。
← 返回问答库