web-dev-qa-db-fra.com

Meilleures pratiques pour les conventions de dénomination des ID dans Android?

J'ai vu ce lien en premier mais il ne semblait pas avoir beaucoup d'activité: Convention de dénomination des identifiants sous Android

Je suis curieux de savoir quelle est la meilleure pratique pour nommer les ID des différents éléments en mode Création sur Android Studio.

En ce moment, je fais des trucs comme ça: Si c'est un TextView avec le texte "Bienvenue dans mon programme", je vais le nommer welcomeTextViewID. Si c'est un bouton qui démarre un sous-programme appelé doStuff, je pourrais l'appeler doStuffButtonID.

En d'autres termes, j'utilise une sorte de descriptor + datatype + ID convention.

Est-ce considéré comme une mauvaise pratique? J'ai toujours entendu des choses mitigées sur l'utilisation de descripteurs à l'intérieur du nom. Par exemple, dans un langage comme C++, nommer une variable de chaîne nameString (car si vous modifiez le type de données ultérieurement, vous devez également mettre à jour le nom).

26
DoubleBass

Paiement -> https://github.com/umesh0492/Android-guidelines

Dénomination supplémentaire de l'ID

Les ID doivent être préfixés avec le nom de l'élément dans le soulignement en minuscules. Par exemple:

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

voir l'exemple:

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

Exemple de menu:

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

Les meilleures directives que j'ai jamais vues et je les respecte.

14
UMESH0492

Je respecte ce type de convention de dénomination pour les identifiants sous Android.

Ex:

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

En regardant simplement id, vous pouvez identifier votre composant. et utilisez le même identifiant dans Java pour éviter toute confusion.

6
Ashish Kudale

Ma pratique:

@+id/SummaryActivityName_SummaryViewType_Description

Par exemple:

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

De cette façon, il est préférable de rechercher des vues sur un grand projet. J'espère que ça aide.

Modifier: mettez le même nom d'ID sur un nom de variable. Exemple:

private TextView MyAct_Txv_UserName;

protected void onCreate(...){
    MyAct_Txv_UserName = (TextView) findViewById(R.id.MyAct_Txv_UserName);
    ...
}
3
Paulo Rodrigues