android - 自定义资源文件夹名称(例如 res\drawable-gamepad)

标签 android resources

我正在为我的游戏添加 handle 支持。我需要大量特定于游戏 handle 的资源(字符串、可绘制对象)。为游戏 handle 资源指定不同的名称不是很有效,因为我必须编写很多这样的代码:

if (gamepadDetected) {
   image.setImageDrawable(getResources().getDrawable(R.drawable.controls_gamepad));
} else {
   image.setImageDrawable(getResources().getDrawable(R.drawable.controls_touch));
}

最简单的方法是创建一个新目录,比如 res\drawable-gamepad 并以某种方式指示 Android 在我的游戏检测到游戏 handle 时使用此文件夹中的资源。 这样我就可以对资源使用相同的名称(比如 res\drawable\controls.jpgres\drawable-gamepad\controls.jpg)。但我猜这是不可能的。

是否有任何其他简单的方法可以向现有项目添加替代资源?

最佳答案

res 文件夹不支持自定义文件夹,但您可以使用 assets 文件夹来构建您自己的文件夹结构。

查看链接:Difference between /res and /assets directories

关于android - 自定义资源文件夹名称(例如 res\drawable-gamepad),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16749159/

相关文章:

java - getClass() getResource 返回 null

根据剩余空间将作业分配给主机的算法

java - 警告此方法有构造函数名称

Android 文件选择器不从 Android Webview 调用

android - 在 map fragment 中添加按钮?

java - 找不到 tomcat 请求的资源时出错 - 在 Netbeans 中实现 SSL 时

.net - 我真的需要在每个Principal上调用Dispose()吗?

resources - Fortran 90 资源?

android - Android版本不断因Room和Kapt失败而失败:app:kaptDebugKotlin

java - MIUI 10 不允许服务启动 Activity - 小米红米 Note