Bonjour à tous.
Est-il possible de créer une instance de classe maclasse (un Activity) sans l'afficher ? Je voudrais juste pouvoir utiliser des fonctions publiques qui sont dedant.
Merci
Nico
Bonjour à tous.
Est-il possible de créer une instance de classe maclasse (un Activity) sans l'afficher ? Je voudrais juste pouvoir utiliser des fonctions publiques qui sont dedant.
Merci
Nico
si ton travail est difficile et tes résultats sont minces
n’oublie pas qu’un jour, le grand chêne a été un gland comme toi.
Le plus simple dans ce cas-là serait de le découpler de leur classe englobante, les rendre statique et les mettre dans une classe utilitaire, non ?
C'est Android, PAS Androïd, ou Androïde didiou !
Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.
Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.
N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android
Nous n'avons pas la même définition de "classe utilitaire" ^^"
Ce que j'entends par là, c'est une classe non-instanciable ne contenant que des méthodes statique permettant de factoriser les traitements.
Ce n'est pas une extension d'Application permettant d'avoir des variables globales à l'application, ni une méta-activité ou un méta-fragment permettant de factoriser des traitements communs à tout ou partie des enfants.
Ce que je comprends de ta question : tu as des traitements T qui sont dans l'Activité A. Tu désirerais en faire appel dans l'Activité B.
Je vais donc compléter ma précédente, plusieurs solutions :
- duplication de code : je la mets histoire de, mais ce n'est pas une solution acceptable
- créer une Activité mère pour factoriser ses traitements pour ses 2 classes (et peut-être pour plus plus tard) : rajouter un niveau d'indirection pour une factorisation de traitements est commun... juste faire attention à ne pas aller dans l'extrême
- mettre les traitements dans Application : si ça a un sens, pourquoi pas => utilisable par la plupart des classes Activité et Fragment, doit être dispo partout et à un fort couple avec Application.
- créer une classe utilitaire : voir s'il est possible de découpler intégralement les méthodes de la classe englobante, si oui => rendre statique et créer une classe "MachinUtils" où iront les traitements de ce genre (il faudra sans doute passer un contexte à chacune des méthodes... mais ce n'est pas surprenant pour Android).
Voilà-voilà.
C'est Android, PAS Androïd, ou Androïde didiou !
Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.
Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.
N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android
en fait faire appel à cette fonction depuis un broadcastreceiver
no comment, ca va de soi
je l'ai déjà fait dans mon application, mais je voulais éviter de mettre cette fonction dedant
oui mais là c'est pour une seule fonction... c'est pas un peu usine à gaz ?
Merci
Nico
si ton travail est difficile et tes résultats sont minces
n’oublie pas qu’un jour, le grand chêne a été un gland comme toi.
Pour une seule fonction, ça peut être excessif. Je ferai ainsi, histoire de découpler... mais c'est vrai que la pertinence ne sera pas forcément intégralement au rendez-vous
C'est Android, PAS Androïd, ou Androïde didiou !
Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.
Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.
N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android
Bon, bah je vais commencer à refactoriser cette fonction et son receiver (il s'agit d'une fonction de téléchargement...
Merci pour les réponses
Nico
si ton travail est difficile et tes résultats sont minces
n’oublie pas qu’un jour, le grand chêne a été un gland comme toi.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager