Android:命名资源

Android:命名资源,android,resources,naming-conventions,Android,Resources,Naming Conventions,这是一个Android开发者的问题,但它不是一个与编程相关的问题,因为它只影响开发者 在命名各种资源时,如颜色、可绘制和字符串等,最常用的约定是什么 我毫无疑问地将我的布局命名为activity\u main或layout\u secondary。然而,在命名前面提到的资源时,我总是有疑问。我永远不知道是否应该根据这些资源的用途或内容来命名它们。例如: 颜色:深蓝色vs文本突出显示 可绘制:blue\u gradientvstop\u bar\u background 字符串:welcome\

这是一个Android开发者的问题,但它不是一个与编程相关的问题,因为它只影响开发者

在命名各种资源时,如颜色、可绘制和字符串等,最常用的约定是什么

我毫无疑问地将我的布局命名为
activity\u main
layout\u secondary
。然而,在命名前面提到的资源时,我总是有疑问。我永远不知道是否应该根据这些资源的用途或内容来命名它们。例如:

  • 颜色:
    深蓝色
    vs
    文本突出显示
  • 可绘制:
    blue\u gradient
    vs
    top\u bar\u background
  • 字符串:
    welcome\u to\u app
    vs
    first\u time\u prompt

是否有社区创建的资源用于良好实践?

Android SDK将是良好实践的良好起点。您可以在SDK中打开任何示例代码,查看代码并查看变量名称。

我通常为其内容命名颜色和图片等资产,但我会为其功能命名一种样式或多状态可绘制

例如:
button_On.png;button_Off.png;button.xml

这样,如果我想在多个地方使用同一个资源,就不会产生混淆。
例如,在一个样式文件中使用一种颜色作为文本颜色,在另一个样式文件中使用背景色。

命名基本上是个人偏好。只要名称指示所定义事物的功能,名称就是完美的。此外,您和使用这些定义的任何其他开发人员都应该知道这些名称的含义以及要选择的定义。如果在整个项目中与名称保持一致,则非常容易

例如,
深蓝色
显然是蓝色,
突出显示的文本
是突出显示文本的颜色。你应该使用的名称取决于你需要什么:如果你想按颜色的名称对颜色进行分类,就取第一个;如果你想从实际颜色中提取颜色,就取第二个。对于一般布局,使用突出显示的文本通常更有意义,因为实际颜色并不重要,功能(文本突出显示与文本规则等)更为重要。在本例中,在突出显示的
text\u
和常规的
text\u
之间进行选择比在
color\u light\u blue
color\u dark\u blue
之间进行选择要明显得多,尽管它们可能指的是相同的颜色。该名称有助于防止错误

Android在[
Android.R.drawable
] (http://developer.android.com/reference/android/R.drawable.html)例如:

  • 按钮图形的
    btn
  • 图标图形的
    ic
    • ic\u菜单
      用于菜单图标
    • 对话框图标的ic\u dialog
  • 状态图标的stat

模式当然不是完美的,但是使用以最通用的分类开始的前缀的优点是,您可以使用代码完成来一步一步地搜索特定的项。所以,<代码> CopyBuxBuiLooSudio可以比 DrkgBuyLuxOutux/Cuff>好,至少如果你认为颜色分类比暗/光分类更重要的话。这同样适用于第一次提示。如果你有很多提示,将它们命名为“第一次提示”、“第二次提示”、“第二次提示”是有意义的。。。如果它们可以按活动分类,例如可以用作超级类别的活动:
mainactivity\u prompt\u*
secondactivity\u prompt\u*
,以便您知道它们属于何处。

您不能用大写字母命名资源文件。