android - 图书馆项目和资源

标签 android polymorphism android-resources common-library

我开发了一个包含所有公共(public)代码和资源的 Android 库项目 需要2个其他项目。 问题是,在一类公共(public)库中,如果它分别用于项目 A 或项目 B,我需要加载不同的资源。

如果我输入 R.string.myId,它找不到资源,因为它不在 CommonLib 上,但它在项目 A 和 B 上定义。

我该如何解决这个问题?在这类项目上获得一种“多态性”的正确方法是什么?也许我在公共(public)库中放了一段代码,比如

 if  (ctx.getPackageName().equals("packageName A")
 else if (ctx.getPackageName().equals("packageName B"))

提前致谢。

最佳答案

您可以将某种 stub 资源添加到您的库项目中,并在应用程序项目中“覆盖”它们。或者,您可以将资源的默认值添加到您的库项目,并在必要时将其中一些资源添加到应用程序项目。

关于android - 图书馆项目和资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5879850/

相关文章:

java - 多态性和接口(interface) - 澄清?

Android Studio 无法解析导入项目中的 R?

android - 如何在 setImageResource() Android 中动态更改 drawable 的 id

android - 在Android的另一个类中获取后台资源

android - Realm 数据库多表

android - 如何在上下滚动时隐藏和取消隐藏 TextView

android - 无法使用硬件键盘在avd中的Edittext中输入

java - 亚型多态性成分

android动画向左滑出,向后反转

java - ArrayList和多态性