我正在制作一个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>
这是最好的方式还是应该使用其他系统?
答案 0 :(得分:26)
这取决于字符串的使用位置。如果“停止”将永远不会在菜单中的任何地方使用,称其为“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等。
<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>
<resources>
<string name="dialog_cancel_yes">Yes, cancel.</string>
<string name="dialog_cancel_no">No, do not cancel.</string>
</resources>
答案 1 :(得分:1)
这确实是一个主观问题。你应该使用你觉得容易处理的任何东西。当我使用布局和drawable(例如button_x,ninepatch_x,icon_x等)时,我当然会进行第二种命名,只是因为它使它们彼此相邻,并且使用内容辅助更容易缩小范围。在XML中,您可以使用注释将它们组合在一起,并添加空格,这些内容可以让您更轻松地快速找到所需内容。