这是Android开发人员的一个问题,但它不是一个与编程相关的问题,因为它只影响开发人员.
命名各种资源(如颜色,绘图和字符串等)时最常用的约定是什么?
我毫不怀疑命名我的布局activity_main或layout_secondary.但是,我一直怀疑前面提到的命名资源.我不知道在使用它们或内容后是否应该命名这些资源.例如:
>颜色:dark_blue vs text_highlighted
> Drawable:blue_gradient vs top_bar_background
>字符串:welcome_to_app vs first_time_prompt
是否有任何社区创建的良好实践资源?
例如,dark_blue显然是蓝色,而text_highlighted是突出显示文本的颜色.您应该使用的名称取决于您需要的名称:如果您想按名称对颜色进行分类,请先使用第一个,如果您想从实际颜色中抽象出第二个.对于使用text_highlighted的一般布局通常会更有意义,因为实际颜色无关紧要,功能(文本高亮与文本常规等)更重要.在这个例子中,text_highlighted和text_regular之间的选择比在color_light_blue和color_dark_blue之间选择要明显得多,尽管它们可以引用相同的颜色.该名称可以帮助防止错误.
Android在[android.R.drawable]中为名称使用前缀
(http://developer.android.com/reference/android/R.drawable.html)例如:
> btn_用于按钮图形
> ic_用于图标图形
> ic_menu_用于菜单图标
> ic_dialog_用于对话框图标
> stat_表示状态图标
模式肯定不完美,但使用以最通用的分类开头的前缀的优点是您可以使用代码完成来逐步搜索特定项目.所以color_blue_dark可能比dark_blue_color更好,至少如果你认为颜色分类比暗/浅分类更重要.这同样适用于first_time_prompt.如果您有很多提示,将它们命名为prompt_first_time,promt_other_time,……如果它们可以按活动分类,例如可以用作超类别:mainactivity_prompt_ *,secondactivity_prompt_ *,这样您就知道它们属于哪里至.