按字母顺序排序表格

我完全是 Lua 的新手,只想修改现有的脚本。

有一个函数可以将值写入列表。我想按名称对它们进行排序:

function display_moments()
  local counter = 1
  if(moments[media_name]~=nill) then
    moments_list = main_layout:add_list(1,4,4,1) -- 空的 moments_list 控件,以防止重复条目
    for i,j in pairs(moments[media_name]) do
      moments_list:add_value(i,counter)
      counter = counter + 1
    end
  end
end

我有机会以任何方式对列表进行排序吗?

点赞
用户5525442
用户5525442

从 Lua table.sort (ref manual) 中得知如果你的列表如下所示:

local _list = {1,4,4,1}
print(unpack(_list)) -- 1, 4, 4, 1
table.sort(_list)
print(unpack(_list)) -- 1, 1, 4, 4

若你的列表是一个数组,则可以在遍历循环之后添加以下代码行:

table.sort(moments_list)
2018-11-02 03:10:03