2015-07-21 83 views
1

我想知道是否有人看到如果有可能从另一个目录获取字符串资源。因此,在默认情况下我的琴弦是这样的:是否可以移动strings.xml的路径/文件位置?

/MyProject/src/main/res/values和翻译语言在/MyProject/src/main/res/values-es等等

我想从另一个文件或子目录样让我的字符串资源:

/MyProject/sub-module/src/res/values但也让它的翻译语言的值相同:/MyProject/sub-module/src/res/values-es

我环顾了开发人员文档和其他资源,但没有看到任何有关更改字符串资源的目录。

回答

4

gradle工具可让您移动整个res/文件夹及其中的所有内容,但不仅是字符串资源。这是now possible使用子文件夹,所以如果你在Mac或Linux可能可以使用符号链接工作。

移动整个res/文件夹中的gradle产出:

sourceSets { 
    main { 
     resources { 
      srcDir 'sub-module/src/res' 
     } 
    } 
} 

的符号链接的方法(我没有试过,但它可能工作):

project/ 
    src/ 
    main/ 
     java/ 
     res/ 
     values/ 
      dimens.xml 
      strings/  <--- actually a symlink to another folder 
      strings.xml 
     values-en/ 
      strings/  <--- actually a symlink to another folder 
      strings.xml 
+0

真棒感谢您对本。我很惊讶,我在这找不到任何东西。符号链接的方法听起来很有趣,无论如何我可以通过git来扩展它。或者我需要编写一些setup.sh来运行并添加符号链接? – ocross

+1

我还没有尝试过,但似乎Git可以很好地处理符号链接:http://stackoverflow.com/a/954575/49489 – Barend