Skip to main content

ui_element Examples

This module is available in versions after 20260507

Find and Click a Button

local ui_element = require("ui_element")

local ok, info_or_err = ui_element.click({
title = "Continue",
role = "button",
})

if not ok then
sys.toast(info_or_err)
end

Find a Search Field and Enter Text

local ui_element = require("ui_element")

local search, err = ui_element.find({
title = "Search",
role = "text_field",
})

if search then
ui_element.set_text(search, "XXTouch")
else
sys.toast(err)
end

Read Text on the Current Page

local ui_element = require("ui_element")

local list, err = ui_element.list_text_elements({
max_level = 1,
})

if list then
for _, item in ipairs(list) do
if item.text then
nLog(item.text)
end
end
else
sys.toast(err)
end

Scroll the Current Page

local ui_element = require("ui_element")

ui_element.scroll("down", {
point = { x = 200, y = 700 },
})

Set a Switch

local ui_element = require("ui_element")

ui_element.set_checked({
title = "Airplane Mode",
role = "switch",
}, false)

Reuse One Snapshot

local ui_element = require("ui_element")

local ui, err = ui_element.snapshot({
max_level = 2,
})

if ui then
local item = ui:find({ text_contains = "Privacy" })
if item then
ui:click(item)
end
else
sys.toast(err)
end

Adjust a Slider or Picker

local ui_element = require("ui_element")

ui_element.increase({
role = "slider",
index = 1,
})

ui_element.decrease({
role = "picker",
index = 1,
}, {
steps = 2,
})

Note: Uses non-chapter APIs sys.toast and nLog.