Android 中 ID 命名约定的最佳做法



>我首先看到了这个链接,但它似乎没有太多活动: Android 中 ID 的命名约定

我很好奇在 Android Studio 上的设计视图中为各种项目命名 ID 的最佳实践是什么。

现在我正在做这样的事情:如果它是一个带有文本"欢迎来到我的程序"的文本视图,我会将其命名为welcomeTextViewID。如果它是一个启动某个称为doStuff的子例程的按钮,我可能会称之为doStuffButtonID

换句话说,我使用一种descriptor + datatype + ID惯例。

这算不算不好的做法?我总是听到在名称中使用描述符的混合内容。例如,在C++命名字符串变量nameString这样的语言中(因为如果您稍后更改数据类型,您还必须更新名称)。

结帐 --> https://github.com/umesh0492/android-guidelines

进一步的 ID 命名

ID 应以小写下划线中的元素名称为前缀。例如:

+---------------------+
| Element   | Prefix  |
|-----------+---------+
| TextView  | text_   |
| ImageView | image_  |
| Button    | button_ |
| Menu      | menu_   |
+-----------+---------+

查看示例:

<ImageView
    android:id="@+id/image_profile"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

菜单示例:

<menu>
    <item
        android:id="@+id/menu_done"
        android:title="Done" />

见过的最好的指导方针,我确实遵循它们。

我在Android中遵循这种类型的ID命名约定。

前任:

Button : btSubmit
TextView : tvWelcome
EditText : etEmailId
CheckBox : cbHobbies
RadioButton : rbMale
LinearLayout : llPanel

只需查看 id,您就可以识别您的组件。 并在 Java 中使用相同的 id 以避免混淆。

我的实践:

@+id/SummaryActivityName_SummaryViewType_Description

例如:

@+id/MyAct_Txv_UserName
@+id/MyAct_Grd_GridUsers
@+id/MyFrag_LstView_UserList

这种方式对于寻求对大项目的意见要好得多。我希望它有所帮助。

编辑:在变量名称上放置相同的 ID 名称。例:

private TextView MyAct_Txv_UserName;
protected void onCreate(...){
    MyAct_Txv_UserName = (TextView) findViewById(R.id.MyAct_Txv_UserName);
    ...
}

最新更新