Je tente de remplacer une classe Android View pour modifier légèrement la fonctionnalité. Mais j'ai besoin de modifier un champ qui n'a pas de méthode setter. J'ai placé la sous-classe dans un package appelé android.widget
. Pourquoi ne puis-je accéder à aucun des champs de package privé? Je remarque que le compilateur dit qu'ils "ne peuvent pas être résolus", plutôt que de ne pas être accessible. Cela a-t-il quelque chose à voir avec la façon dont Android.jar est construit?Pourquoi ne puis-je pas accéder aux champs private-package du package android.widget?
2
A
Répondre
4
Ces méthodes ne font pas partie du SDK Android et ne sont donc pas disponibles directement à partir d'une application SDK. Si vous construisez un firmware, vous pouvez y accéder directement. Vraisemblablement, votre sous-classe pourrait obtenir à eux via la réflexion, mais gardez à l'esprit que ces champs (ou tout autre truc non-SDK) est sujet à changement dans une version Android donnée.
2
C'est également un effet secondaire des chargeurs de classe. Votre paquet android.widget n'est pas le même paquet android.widget utilisé par le système.
Questions connexes
- 1. Comment accéder aux champs du modèle individuellement?
- 2. Pourquoi BlazeDS ne sérialise pas certains champs?
- 3. C# .NET Comment accéder dynamiquement aux champs du contrôle utilisateur?
- 4. Accéder aux champs statiques en XAML
- 5. djangoproject accéder aux champs de l'objet dynamiquement
- 6. Comment accéder aux champs d'une ligne jqGrid?
- 7. ne peut pas accéder aux propriétés MovieClip dans flashDevelop
- 8. LINQ to NHibernate ne peut pas accéder aux enfants
- 9. Accéder aux interfaces des classes qui ne les implémentent pas?
- 10. éclipse ne reconnaît pas package
- 11. Pourquoi ne pouvons-nous pas accéder aux valeurs côté serveur dans la requête POST?
- 12. Pourquoi ne puis-je pas accéder aux données bitmap de la vidéo FLV provenant d'Amazon S3?
- 13. Pourquoi Char.MinVal/.MaxVal ne sont pas statiques? Pourquoi ne pas rendre ces champs statiques?
- 14. Pourquoi je ne peux pas accéder aux propriétés de ma ComboBox personnalisée
- 15. Pourquoi ne puis-je pas accéder aux éléments d'un fichier XML avec XPath dans XML :: LibXML?
- 16. Pourquoi ne puis-je pas accéder aux éléments d'une liste même si SPList.ItemCount est> 0?
- 17. VBA pour le mot: pourquoi ne pas accéder aux autres documents ouverts?
- 18. Je ne peux pas accéder aux fichiers dans IIS 6
- 19. Méthode de classe ne peut pas accéder aux propriétés
- 20. Apache ne peut pas accéder aux applications Django
- 21. Les pages Web ne peuvent pas accéder aux dossiers. (IIS)
- 22. Pourquoi le nom du package ne peut-il pas être analysé dans le fichier jar?
- 23. La page aspx déployée ne peut pas accéder aux méthodes du même projet
- 24. Comment accéder aux champs dynamiques multivalués avec SolrNet?
- 25. Pourquoi mes formulaires ne retournent pas les erreurs de champs?
- 26. Accéder aux éléments du formulaire en utilisant l'ID
- 27. Extendscript Toolkit ne s'arrête pas aux points d'arrêt, pourquoi?
- 28. Sitemesh + Struts2 + Velocity: Les décorateurs ne peuvent pas accéder aux objets du contexte
- 29. Rails after_create callback ne peut pas accéder aux attributs du modèle
- 30. Accès aux paramètres LDA à partir du package LDA d'Apache Mahout