Analisadores de diagnóstico do designer android
Este guia lista todos os analisadores de diagnóstico de layout do Android com suporte no momento.
Acessibilidade
Os seguintes analisadores ajudam a melhorar o suporte à acessibilidade:
ID | Título | Severidade | Descrição |
---|---|---|---|
ContentDescription | Imagem sem contentDescription |
Aviso | Atributo ausente contentDescription na imagem |
Exatidão
Os seguintes analisadores ajudam a corrigir problemas de correção em um layout:
ID | Título | Severidade | Descrição | Ajuda |
---|---|---|---|---|
AdapterViewChildren | AdapterView com filhos | Aviso | AdapterViews não pode ter filhos em XML | Link |
MissingId | Os fragmentos devem especificar um id ou tag |
Aviso | Essa <fragment> marca deve especificar um id ou um para preservar o tag estado entre reinicializações de atividade |
Link |
NestedScrollingVertical | Elementos de rolagem vertical aninhados | Aviso | Widgets de rolagem aninhados | |
NestedScrollingHorizontal | Elementos de rolagem horizontal aninhados | Aviso | Widgets de rolagem aninhados | |
ScrollViewSize | ScrollView filhos com tamanhos de fill_parent/match_parent incorretos | Aviso | ScrollView filhos com tamanhos de fill_parent/match_parent incorretos | |
ScrollViewCount | ScrollViews pode ter apenas um filho | Aviso | Um modo de exibição de rolagem pode ter apenas um filho | |
MissingAndroidNamespace | Namespace do Android ausente no atributo | Erro | Namespace XML do Android ausente; seu atributo será interpretado como um atributo personalizado | |
DuplicateIDs | IDs duplicadas | Erro | IDs duplicadas em um único layout | |
IncludeLayoutParamsMissingWidthAndHeight | Largura e altura ausentes | Erro | Parâmetros de layout ignorados em include | Link |
IncludeLayoutParamsMissingWidth | Largura ausente | Erro | Parâmetros de layout ignorados em include | Link |
IncludeLayoutParamsMissingHeight | Altura ausente | Erro | Parâmetros de layout ignorados em include | Link |
Orientation | Orientação explícita ausente | Erro | Orientação explícita ausente | |
Suspicious0dp | Dimensão 0dp suspeita | Erro | Dimensão 0dp suspeita | |
RequiredSizeWidth | Atributo de largura ausente | Erro | Atributo ausente: layout_width | |
RequiredSizeHeight | Atributo de altura ausente | Erro | Atributo ausente: layout_height | |
WebViewLayout | WebViews em wrap_content pais | Erro | ||
WrongCase | Caso errado para a marca de exibição | Erro | Caso errado para a marca de exibição | Link |
Design
Os analisadores a seguir ajudam a melhorar a forma como você ingressa nos arquivos de layout:
ID | Título | Severidade | Descrição |
---|---|---|---|
HardcodedColor | Cor codificada | Info | A cor codificada geralmente leva à inconsistência |
HardcodedSize | Tamanho codificado | Info | O tamanho codificado geralmente leva à inconsistência |
HardcodedText | Texto codificado | Aviso | Texto codificado |
UnresolvedResource | URL do recurso não resolvido | Aviso | Essa URL de recurso não pode ser resolvida |
XmlErrors | Erro de sintaxe XML | Erro | Erro de sintaxe XML |
Desempenho
Os seguintes analisadores ajudam a melhorar o desempenho do seu layout:
ID | Título | Severidade | Descrição |
---|---|---|---|
Pesos Aninhados | Pesos de layout aninhados | Aviso | Pesos aninhados são ruins para o desempenho |
TooManyViews | O layout tem muitas exibições | Aviso | O layout tem muitas exibições |
TooDeepLayout | A hierarquia de layout é muito profunda | Aviso | A hierarquia de layout é muito profunda |
UselessParent | Layout pai inútil | Aviso | Layout pai inútil |
UselessLeaf | Layout de folha inútil | Aviso | Essa %1$s exibição é inútil (sem filhos, sem background , sem id , sem style ) |
Usabilidade
Os seguintes analisadores ajudam a melhorar a usabilidade do layout para seus clientes:
ID | Título | Severidade | Descrição |
---|---|---|---|
NegativeMargin | Margens Negativas | Aviso | Margens Negativas |
MissingInputType | EditText sem inputType | Aviso | Nenhum tipo de entrada especificado |
InputTypePhone | EditText parece ser um número de telefone | Aviso | O nome do modo de exibição sugere que este é um número de telefone, mas não inclui phone no inputType |
InputTypeNumber | EditText parece ser um número | Aviso | O nome do modo de exibição sugere que esse é um número, mas não inclui um numérico inputType (como numberDecimal ) |
InputTypePassword | EditText parece ser uma senha | Aviso | O nome do modo de exibição sugere que essa é uma senha, mas não inclui password no inputType (como textVisiblePassword ) |
InputTypePIN | EditText parece ser um PIN | Aviso | O nome do modo de exibição sugere que se trata de uma senha (PIN), mas não inclui numberPassword no inputType |
InputTypeEmail | EditText parece ser um email | Aviso | O nome do modo de exibição sugere que este é um endereço de email, mas não inclui email no inputType (como textEmailAddress ) |
InputTypeURI | EditText parece ser um URI | Aviso | O nome do modo de exibição sugere que este é um URI, mas não inclui textUri no inputType |
InputTypeDate | EditText parece ser uma data | Aviso | O nome do modo de exibição sugere que esta é uma data, mas não inclui date no inputType (como datetime ) |