参考drawable图像标题为数字

Her*_*tus 5 android drawable

如果文件名只是一个数字,你能引用一个drawable吗?

示例:如果我在res/drawable中有一个图像名称"1.jpg",如果我尝试使用R.drawable.1引用它会给我一个错误

如果我在res/drawable中有一个图像名称"one.jpg",如果我尝试使用R.drawable.one引用它,它将正常工作

Jor*_*dan 2

简短回答:不。

\n\n

更长的答案:

\n\n

每个包含的资源的文件名都用于打包 - 它将被指定为public static final intR.java 文件中的字段名称。这意味着除了其他限制之外,资源名称还必须满足 Java 变量名称的条件。

\n\n

请注意Java 教程之一提醒我们有关 Java 变量命名的内容:

\n\n
\n

变量的名称可以是任何合法标识符 \xe2\x80\x94 无限长度的 Unicode 字母和数字序列,以字母、美元符号“$”或下划线字符“_”开头。

\n
\n\n

因此以下是有效的 Java 变量名称并且可以编译:

\n\n
public static final int _1=0x7f020000;\npublic static final int one=0x7f020001;\n
Run Code Online (Sandbox Code Playgroud)\n\n

而下面的变量名会导致编译错误:

\n\n
public static final int 1=0x7f020000;\n
Run Code Online (Sandbox Code Playgroud)\n\n

长的答案是,这是 Android 所构建的 java 中的现有行为,保留了相同的限制。

\n\n

此外,它更进一步:R.java 并不特定于可绘制对象。您会注意到,您无法拥有1.xml布局,甚至无法<string name="1">在您的strings.xml

\n