Trường bộ chọn
Mô-đun này khả dụng trong các phiên bản sau 20260507
Bộ chọn là một bảng Lua mô tả phần tử giao diện cần tìm hoặc thao tác. Nên dùng văn bản dễ đọc kết hợp với vai trò và chỉ thêm index khi có nhiều phần tử giống nhau.
Ví dụ
local selector = {
title = "Tìm kiếm",
role = "text_field",
}
local item = ui_element.find(selector)
Trường
- title / text Chuỗi. Khớp với tiêu đề dễ đọc của phần tử. Hai trường này có cùng ý nghĩa.
- text_contains Chuỗi. Khớp với chuỗi con trong tiêu đề dễ đọc.
- value Chuỗi, số hoặc boolean. Khớp với giá trị hiện tại của phần tử.
- value_contains Chuỗi. Khớp với chuỗi con trong giá trị phần tử.
- identifier Chuỗi. Khớp với mã định danh phần tử. Không phải ứng dụng nào cũng cung cấp trường này.
- bundle_id Chuỗi. Khớp với mã định danh gói của ứng dụng sở hữu phần tử.
- role
Chuỗi. Khớp với loại phần tử. Các giá trị thường gặp gồm
button,text_field,static_text,switch,checkbox,radio,slider,picker,scrollable,link,image,keyboard_key. - traits
Chuỗi hoặc mảng chuỗi. Khớp với tên đặc tính như
Button,StaticText,Toggle,Adjustable. - visible Boolean. Khớp theo việc phần tử có hiển thị hay không.
- hittable Boolean. Khớp theo việc hiện có thể tương tác với phần tử hay không. API thao tác thường yêu cầu mục tiêu có thể tương tác.
- checked Boolean. Khớp với trạng thái đã xác nhận của công tắc, hộp kiểm, nút chọn và các điều khiển tương tự.
- selected Boolean. Khớp theo việc phần tử có được chọn hay không.
- index
Số nguyên. Khi nhiều phần tử cùng khớp, chọn phần tử thứ N. Chỉ mục bắt đầu từ
1.
Mô tả
Tránh dùng tọa độ, kích thước hoặc mã định danh cửa sổ làm bộ chọn chính vì chúng dễ thay đổi. Nếu nhiều phần tử cùng khớp và không chỉ định
index, API thao tác có thể trả vềnil, "ambiguous target". Ứng dụng và phiên bản iOS khác nhau có thể cung cấp các trường khác nhau. Hãy duy trì logic dự phòng cho các trường quan trọng bị thiếu.