différence entre @id et @android:id
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ListView android:id="@android:id/list" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:layout_weight="1" />
<Spinner android:id="@+id/section_spinner"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:layout_margin="5dp" />
</LinearLayout>
quelle est la différence entre @android:id et @id dans ce cas?
id de votre propre id, Android id par défaut android a certains identifiants.
OriginalL'auteur denniss | 2012-03-02
Vous devez vous connecter pour publier un commentaire.
Vous devez utiliser
@+id
lorsque vous définissez votre propre Id de vue, qui dans ce cas est section_spinner. Et@android:id
est utilisé lorsque vous avez besoin de définir un Identifiant d'un point de vue android pré-Id défini dans le cadre. pour l'e.g lors de l'utilisation de ListActivity, TabWidget/FrameLayout dans TabHost et etc.OriginalL'auteur waqaslam
Le symbole (@) au début de la chaîne indique que l'analyseur XML doit analyser et d'étendre le reste de la chaîne d'ID et de l'identifier comme un ID de ressource. Le plus-le symbole (+) signifie que c'est un nouveau nom de la ressource qui doit être créé et ajouté à nos ressources (dans le R.java fichier). Il y a un certain nombre d'autres ID de ressources qui sont offertes par l'Androïde cadre. Lorsque le référencement d'un Android ID de ressource, vous n'avez pas besoin de la plus-symbole, mais doit ajouter le package android espace de noms.
@+id/section_spinner
signifie que vous êtes la création d'un id nommé section_spinner dans l'espace de noms de votre application.Vous pouvez le consulter à l'aide de @id/section_spinner .
@android:id/list
signifie que vous faites référence à une liste définie dans l'android de l'espace de noms.Le '+' signifie pour créer le symbole s'il n'existe pas déjà. Vous n'en avez pas besoin (et ne devrait pas l'utiliser) lors de la référence à android: les symboles, parce que ceux qui sont déjà définies pour vous par la plate-forme et vous ne pouvez pas faire votre propre espace de noms, de toute façon.
Ceci, en combinaison avec la réponse de @padma ci-dessous, c'est exactement ce que je cherchais. Merci à vous deux!
OriginalL'auteur Ajay Raval
id de votre propre id, Android id est l'id par défaut présent dans la plate-forme android res/values/ids.xml a certains identifiants ci-dessous pour API 10
tous ces noms par défaut d'android
vous pouvez trouver dans votre dossier sdk sous toutes les api android niveaux /android-sdk/platforms/android-17/data/res/values/ids.xml
OriginalL'auteur Padma Kumar
Vous renvoie à votre propre défini
id
dans votre projet.et
Vous avez fait référence à l'id défini par android cadre
OriginalL'auteur Adil Soomro