Quelle est la différence entre getContext()
, getApplicationContext()
, getBaseContext()
et " this
"? Bien que ce soit une question simple, je suis incapable de comprendre la différence fondamentale entre eux. S'il vous plaît donnez quelques exemples faciles si possible.
Réponses
Trop de publicités?Vue.getContext(): Retourne le contexte, le point de vue est actuellement en cours d'exécution. Habituellement actuellement en Activité.
De l'activité.getcontexteapplication(): Retourne le contexte de l'ensemble de l'application (toutes les Activités sont en cours d'exécution à l'intérieur de d'). Utiliser ce lieu de l'actuel contexte d'Activité si vous avez besoin d'un contexte lié au cycle de vie de l'ensemble de l'application, et pas seulement la l'Activité en cours.
ContextWrapper.getBaseContext(): Si vous avez besoin d'accéder à un Contexte dans un autre contexte, vous utilisez un ContextWrapper. L' Contexte visé de l'intérieur que ContextWrapper est accessible via getBaseContext().
getApplicationContext () - Retourne le contexte pour toutes les activités s'exécutant dans l'application.
getBaseContext () - Si vous voulez accéder au contexte à partir d'un autre contexte dans l'application, vous pouvez y accéder.
getContext () - Retourne la vue contextuelle uniquement en cours d'exécution.
Context
fournit des informations sur les Actvity
ou Application
aux composants nouvellement créés.
Context
pertinent doit être fourni aux composants nouvellement créés (contexte d'application ou contexte d'activité)
Puisque Activity
est une sous-classe de Context
, on peut utiliser this
pour obtenir le contexte de cette activité