Android工程图片资源命名禁忌

编程入门 行业动态 更新时间:2024-10-23 21:33:08

Android工程图片资源命名<a href=https://www.elefans.com/category/jswz/34/1739418.html style=禁忌"/>

Android工程图片资源命名禁忌

Android工程中,res\drawable\ 文件夹下所有的图片资源文件命名,不允许:

1. 大写字母

从Eclipse的这个报错可以知道资源文件的命名规则。

Invalid file name: must contain only [a-z0-9_.]

参考Android Issue 31。

2. "default.png"

不能生成 R.java,报错:

res\drawable\default.png:0: error: invalid symbol: 'default'

出现这个错是因为类似defaultcontinue等是Java的保留符号,而Android项目中资源文件(譬如drawable中的图片和strings.xml等)不能使用Java保留符号的原因是它们会被翻译成Java代码(R.java),使Dalvik VM可以解释。

例如strings.xml中的

<string name="continue">Continue</string>

可被翻译成

public final class R {public static final class string {public static final int continue=0x7f040000;}
}

Java的Keyword清单:.html

3. 以下划线("_")开头

不能生成 R.java,报错Type是 "Android AAPT Problem"。

(skipping (null) file ...)

2009年提交的Android Issue 5343指出“Files in the assets folder starting with an underscore are omitted by the build script”,“Folders starting with an underscore are omitted without warning.”。更多信息都在5343这个issue detail里。

看上去,res/drawable里以下划线开头的文件也被aapt报错了。类似的还有人提到res/raw里的python脚本文件__init__.py

4. 以数字加下划线("[0-9]_")开头

常见于图片资源。可以生成 R.java,但是 R.java 文件内报错:

Underscores can only be used with source level 1.7 or greater

这里涉及到两种情况。

  1. Java标识符不能以数字开头,第一个字符应该是字母。

  2. 下划线。Java 7中引入了一个新特性“Underscores in Numeric Literals”。譬如1_000就是1000。

以数字开头的报错如下:

Syntax error on token "0xxx", delete this token
本文仅用于学习和交流目的,不代表图灵社区观点。非商业转载请注明作译者、出处,并保留本文的原始链接。

更多推荐

Android工程图片资源命名禁忌

本文发布于:2024-02-06 18:45:23,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1751054.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:禁忌   工程   资源   图片   Android

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!