微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Android:命名资源

这是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_ *,这样您就知道它们属于哪里至.

原文地址:https://www.jb51.cc/android/430685.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐