Descrição dos campos do seletor
Este módulo está disponível somente a partir da versão 20260507.
Um seletor é uma tabela Lua que descreve o elemento de UI a localizar ou operar. Recomenda-se priorizar a combinação de texto legível e função e adicionar index somente quando necessário para distinguir elementos com o mesmo nome.
Exemplo
local selector = {
title = "搜索",
role = "text_field",
}
local item = ui_element.find(selector)
Campos
- title / text Texto; corresponde ao título legível do elemento. Ambos têm o mesmo significado.
- text_contains Texto; corresponde à substring contida no título legível.
- value Texto, número ou booleano; corresponde ao valor atual do elemento.
- value_contains Texto; corresponde à substring contida no valor do elemento.
- identifier Texto; corresponde ao identificador do elemento. Nem todos os aplicativos fornecem esse campo.
- bundle_id Texto; corresponde ao bundle identifier do aplicativo ao qual o elemento pertence.
- role
Texto; corresponde ao tipo do elemento. Os valores comuns incluem
button,text_field,static_text,switch,checkbox,radio,slider,picker,scrollable,link,imageekeyboard_key. - traits
Texto ou array de textos; corresponde aos nomes das características do elemento, como
Button,StaticText,ToggleeAdjustable. - visible Booleano; corresponde à visibilidade do elemento.
- hittable Booleano; corresponde à possibilidade de atingir o elemento no momento. As interfaces de ação normalmente exigem um destino atingível.
- checked Booleano; corresponde ao estado confirmado de interruptores, caixas de seleção, opções de escolha única e outros controles.
- selected Booleano; corresponde ao estado selecionado do elemento.
- index
Inteiro; seleciona qual correspondência usar quando houver várias, começando em
1, conforme a convenção do Lua.
Descrição
Não é recomendável usar como seletor principal campos que mudam facilmente, como coordenadas, dimensões e identificadores de janela. Quando vários elementos correspondem e
indexnão é especificado, as interfaces de ação podem retornarnil, "ambiguous target". Os campos expostos podem variar entre aplicativos e versões do iOS; preveja uma lógica de tratamento para a ausência de campos essenciais.