Android Designer 诊断分析器
本指南列出了当前支持的所有 Android 布局诊断分析器。
辅助功能
以下分析器有助于改进辅助功能支持:
ID | 标题 | Severity | 说明 |
---|---|---|---|
ContentDescription | 无 contentDescription 的图像 |
警告 | 图像上缺少 contentDescription 属性 |
正确性
以下分析器有助于修复布局中的正确性问题:
ID | 标题 | Severity | 说明 | 帮助 |
---|---|---|---|---|
AdapterViewChildren | 有子级的 AdapterView | 警告 | AdapterView 在 XML 中不能有子项 | 链接。 |
MissingId | 片段应指定 id 或 tag |
警告 | 此 <fragment> 标记应指定 id 或 tag 以保留活动重启中的状态 |
链接。 |
NestedScrollingVertical | 嵌套的垂直滚动元素 | 警告 | 嵌套的滚动小组件 | |
NestedScrollingHorizontal | 嵌套的水平滚动元素 | 警告 | 嵌套的滚动小组件 | |
ScrollViewSize | 具有错误 fill_parent/match_parent 大小的 ScrollView 子级 | 警告 | 具有错误 fill_parent/match_parent 大小的 ScrollView 子级 | |
ScrollViewCount | ScrollViews 只能具有一个子级 | 警告 | 滚动视图只能有一个子视图 | |
MissingAndroidNamespace | 属性上缺少 Android 命名空间 | 错误 | 缺少 Android XML 命名空间;将按自定义属性解释属性 | |
DuplicateIDs | 重复的 ID | 错误 | 在单个布局中存在重复的 ID | |
IncludeLayoutParamsMissingWidthAndHeight | 缺少宽度和高度 | 错误 | 已忽略包含中的布局参数 | 链接。 |
IncludeLayoutParamsMissingWidth | 缺少宽度 | 错误 | 已忽略包含中的布局参数 | 链接。 |
IncludeLayoutParamsMissingHeight | 缺少高度 | 错误 | 已忽略包含中的布局参数 | 链接。 |
方向 | 缺少显式方向 | 错误 | 缺少显式方向 | |
Suspicious0dp | 可疑的 0dp 维度 | 错误 | 可疑的 0dp 维度 | |
RequiredSizeWidth | 缺少宽度属性 | 错误 | 缺少属性: layout_width | |
RequiredSizeHeight | 缺少高度属性 | 错误 | 缺少属性: layout_height | |
WebViewLayout | wrap_content 父级中的 WebView | 错误 | ||
WrongCase | 视图标记的大小写错误 | 错误 | 视图标记的大小写错误 | 链接。 |
设计
以下分析器有助于改进加入布局文件的方式:
ID | 标题 | Severity | 说明 |
---|---|---|---|
HardcodedColor | 硬编码颜色 | 信息 | 硬编码颜色常导致不一致 |
HardcodedSize | 硬编码大小 | 信息 | 硬编码的大小常导致不一致 |
HardcodedText | 硬编码文本 | 警告 | 硬编码文本 |
UnresolvedResource | 未解析的资源 URL | 警告 | 无法解析此资源 URL |
XmlErrors | XML 语法错误 | 错误 | XML 语法错误 |
性能
以下分析器有助于提高布局的性能:
ID | 标题 | Severity | 说明 |
---|---|---|---|
NestedWeights | 嵌套的布局权重 | 警告 | 嵌套的小组件将影响性能 |
TooManyViews | 布局具有太多视图 | 警告 | 布局具有太多视图 |
TooDeepLayout | 布局层次结构太深 | 警告 | 布局层次结构太深 |
UselessParent | 无用的父布局 | 警告 | 无用的父布局 |
UselessLeaf | 无用的叶式布局 | 警告 | 此 %1$s 视图是无用的(无子级、background 、id 和 style ) |
可用性
以下分析器有助于改善客户的布局可用性:
ID | 标题 | Severity | 说明 |
---|---|---|---|
NegativeMargin | 负边距 | 警告 | 负边距 |
MissingInputType | 不带 inputType 的 EditText | 警告 | 未指定输入类型 |
InputTypePhone | EditText 似乎是电话号码 | 警告 | 视图名称表明这是电话号码,但它在 inputType 中不包含 phone |
InputTypeNumber | EditText 似乎是数字 | 警告 | 视图名称表明这是数字,但它不包含数值型 inputType (如 numberDecimal ) |
InputTypePassword | EditText 似乎是密码 | 警告 | 视图名称表明这是密码,但它在 inputType 中不包含 password (例如 textVisiblePassword ) |
InputTypePIN | EditText 似乎是 PIN | 警告 | 视图名称表明这是密码 (PIN),但它在 inputType 中不包含 numberPassword |
InputTypeEmail | EditText 似乎是电子邮件 | 警告 | 视图名称表明这是电子邮件地址,但它在 inputType 中不包含 email (例如 textEmailAddress ) |
InputTypeURI | EditText 似乎是 URI | 警告 | 视图名称表明这是 URI,但它在 inputType 中不包含 textUri |
InputTypeDate | EditText 似乎是日期 | 警告 | 视图名称表明这是日期,但它在 inputType 中不包含 date (例如 datetime ) |