Engine Class
Pages
*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่
สรุป
คุณสมบัติ
วิธีการ
ได้รับทอดโดย
ตัวอย่างโค้ด
ตัววนรอบหน้าที่
-- ปรับรูปแบบหน้าเป็นตาราง
local function pagesToTable(pages)
local items = {}
while true do
table.insert(items, pages:GetCurrentPage())
if pages.IsFinished then
break
end
pages:AdvanceToNextPageAsync()
end
return items
end
local function iterPageItems(pages)
local contents = pagesToTable(pages)
-- ติดตามหมายเลขหน้าปัจจุบันเริ่มต้นที่ 1
local pageNum = 1
-- รับหมายเลขหน้าสุดท้ายเพื่อที่เราจะไม่ทำซ้ำมัน
local lastPageNum = #contents
-- สำหรับการดำเนินการนี้สะดวกสบายทำให้ coroutine ทำงานต่อจนกว่าจะไม่มีอะไรให้ผ่าน
return coroutine.wrap(function()
-- วนลูปจนกว่าหมายเลขหน้าจะมากกว่าหมายเลขหน้าสุดท้าย
while pageNum <= lastPageNum do
-- ไปผ่านทุกการเข้าของหน้าปัจจุบัน
for _, item in ipairs(contents[pageNum]) do
-- หยุดการวนลูปเพื่อให้ผู้พัฒนาจัดการการเข้ารายการและหมายเลขหน้า
coroutine.yield(item, pageNum)
end
pageNum += 1
end
end)
end
-- ใช้ฟังก์ชั่น iterPageItems เพื่อวนซ้ำผ่านหน้าของการค้นหาของแคตาล็อก
local AvatarEditorService = game:GetService("AvatarEditorService")
local parameters = CatalogSearchParams.new()
parameters.SearchKeyword = "ผม"
local catalogPages = AvatarEditorService:SearchCatalogAsync(parameters)
for item, pageNumber in iterPageItems(catalogPages) do
print(item, pageNumber)
endเอกสารอ้างอิงเกี่ยวกับ API
คุณสมบัติ
วิธีการ
AdvanceToNextPageAsync
Pages:AdvanceToNextPageAsync():()
ส่งค่ากลับ
()