我有一个Android项目,其中需要更改几个字符串,图像和数据库以适应每个客户端(这些将是单独的应用程序,而不是例如客户输入其名称)。
据我所知,我这样做的最好方法是使用一个库来处理所有的GUI和逻辑,然后使用它来改变项目中的必要内容。不幸的是,库似乎在父项目的res/layout
文件夹中查找布局,但仍然需要在其自己的res/layout
文件夹中使用相同的文件才能生成R.java
。这基本上意味着我必须处理重复的资源副本。
我的问题基本上是这样的:我的项目是否可以使用库中的资源(而不是父项目),除了父项目中保存的一些资源(可以在库中的代码中引用) )?
否则,有没有更好的方法来解决这个问题?
答案 0 :(得分:0)
不幸的是,库似乎在父项目的res / layout文件夹中查找布局,但仍然需要在自己的res / layout文件夹中使用相同的文件才能生成R.java。这基本上意味着我必须处理重复的资源副本。
是的,尽管库中的副本只是你的默认值。如果需要替换它们,您只能在托管项目中覆盖它们。因此,唯一存在“重复”的地方是文件实际上不同的地方。
我的项目是否可以使用库中的资源(而不是父项目),除了父项目中保存的一些资源(可以在库中的代码中引用)?
仅当您修改库的API以接受资源ID作为参数时,而不是按R
名称假设某些资源。例如,大多数Android SDK使用资源ID作为方法的参数(例如setContentView()
),而不是假设要使用的资源的名称(例如R.layout.main
)。
否则,有没有更好的方法来解决这个问题?
你原来的方法对我来说似乎很好。