android - 组织 Strings.xml

标签 android xml string organization

我正在制作一个 android 应用程序,因为我刚刚开始,所以我想尝试获得最有条理的代码/资源。到目前为止,在我的 strings.xml 文件中,我有这个:

<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">GameController</string>
<string name="stop">Stop</string>
<string name="start">Start</string>
<string name="preferences">Preferences</string>
<string name="back">Back</string>
</resources>

除了 app_name 之外的所有字符串都在选项菜单中使用。但由于我将添加更多字符串,所以我认为这样做可能会更好:

<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">GameController</string>
<string name="menu_stop">Stop</string>
<string name="menu_start">Start</string>
<string name="menu_preferences">Preferences</string>
<string name="menu_back">Back</string>
</resources>

这是最好的方法还是我应该使用其他系统?

最佳答案

这取决于字符串的使用位置。如果“stop”永远不会在菜单中的任何地方使用,那么将其称为“menu_stop”是个好主意。如果它要到处使用,那么它应该被称为“停止”。

此外,XML 注释对于组织资源非常有用。

<resources>
    <string name="app_name">GameController</string>

    <!-- Menu Strings -->
    <string name="menu_stop">Stop</string>
    <string name="menu_start">Start</string>
    <string name="menu_preferences">Preferences</string>
    <string name="menu_back">Back</string>
</resources>

最后,如果您发现您有大量的字符串资源,您可能希望将它们分成不同的 xml 文件:menu_strings.xml、dialog_strings.xml 等。

menu_strings.xml

<resources>
    <!-- Menu Strings -->
    <string name="menu_stop">Stop</string>
    <string name="menu_start">Start</string>
    <string name="menu_preferences">Preferences</string>
    <string name="menu_back">Back</string>
</resources>

dialog_strings.xml

<resources>
    <string name="dialog_cancel_yes">Yes, cancel.</string>
    <string name="dialog_cancel_no">No, do not cancel.</string>
</resources>

关于android - 组织 Strings.xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4597216/

相关文章:

java - java 如何将RSS保存到xml文件

java - 为什么我的函数在搜索字符串以查找某些子字符串时仅返回 0?

Android 字符串资源引用

android - 为什么 Unity IAP 服务无法在 Android 生产版本上运行?

c# - LINQ 到 XML。如何获得一些字符串?

android - Android.mk 中的预处理器宏被忽略,但在 Application.mk 中有效

xml - 扩展 HTML5 标签集合

c++ - 字符串下标超出范围 - 我在哪里犯了错误?

Android mkdirs() 设置无效权限,将其他应用程序锁定在文件夹之外

java - 如何更改项目的编译SDK版本?