gpt4 book ai didi

Android:命名资源

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:48:24 25 4
gpt4 key购买 nike

这是一个针对 Android 开发人员的问题,但它不是与编程相关的问题,因为它只会影响开发人员。

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

我毫不怀疑将我的布局命名为 activity_mainlayout_secondary。但是,对于之前提到的资源命名,我一直心存疑虑。我永远不知道我是否应该根据它们的用途或内容来命名这些资源。例如:

  • 颜色:dark_bluetext_highlighted
  • 可绘制对象:blue_gradienttop_bar_background
  • 字符串:welcome_to_appfirst_time_prompt

是否有任何社区创建的良好实践资源?

最佳答案

命名几乎是个人喜好。只要名称表明所定义事物的功能是什么,该名称就是完美的。此外,您和任何其他使用这些定义的开发人员都应该知道这些名称的含义以及选择哪个定义。如果您在整个项目中使用的名称保持一致,那就很容易了。

例如 dark_blue 显然是蓝色,而 text_highlighted 是高亮文本的颜色。您应该使用的名称取决于您的需要:如果您想按名称对颜色进行分类,请使用第一个,如果您想从实际颜色中抽象出来,请使用第二个。对于一般布局,使用 text_highlighted 通常会更有意义,因为实际颜色并不重要,功能(文本突出显示与文本常规等)更重要。在此示例中,在 text_highlightedtext_regular 之间进行选择比在 color_light_bluecolor_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,将它们命名为 prompt_first_timepromt_other_time 是有意义的,...如果它们可以按例如可以用作父类(super class)别的 Activity :mainactivity_prompt_*secondactivity_prompt_* 这样您就知道它们属于哪里。

关于Android:命名资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12672949/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com