我有一个android项目,其中需要修改几个字符串,图像和数据库,以适应每个客户(这些将是单独的应用程序,而不是,例如,客户输入他们的名字)。据我所知,对我来说,最好的方法是使用一个库来处理所有的GUI和逻辑,然后使用它来更改项目中的必要内容。不幸的是,该库似乎在父项目的res/layout文件夹中查找布局,但为了生成R.java,它仍然需要在自己的res/layout文件夹中找到相同的文件。这基本上意味着我必须处理资源的重复副本。
我的问题基本上是这样的:除了父项目中包含的一些资源(可以在库中的代码中引用)之外,我的项目是否可以使用库中的资源(与父项目相反)?
否则,有没有更好的方法来处理这个问题呢?
发布于 2012-04-27 00:06:14
不幸的是,该库似乎在父项目的res/layout文件夹中查找布局,但为了生成R.java,它仍然需要在自己的res/layout文件夹中找到相同的文件。这基本上意味着我必须处理资源的重复副本。
没错,尽管库中的副本只是您的默认设置。如果需要替换它们,则只需在宿主项目中重写它们。因此,只有在文件实际上不同的地方才会有“副本”。
我的项目是否可以使用库中的资源(与父项目相反),除了父项目中包含的一些资源(可以在库中的代码中引用)?
仅当您将库的API修改为接受资源ID作为参数时,而不是假设某些资源按R名称。例如,大多数Android SDK使用资源ID作为方法的参数(例如,setContentView()),而不是假定要使用的资源的名称(例如,R.layout.main)。
否则,有没有更好的方法来处理这个问题呢?
你最初的方法对我来说似乎很好。
https://stackoverflow.com/questions/10333828
复制相似问题