Je suis en train d'appliquer une animation à vue dans mon application Android après mon activité est créée. Pour ce faire, j'ai besoin de déterminer la taille actuelle de la vue, puis mis en place une animation à l'échelle de la taille actuelle à la nouvelle taille. Cette partie doit être fait au moment de l'exécution, depuis le point de vue des échelles de tailles différentes en fonction de l'entrée de l'utilisateur. Ma mise en page est définie en XML.
Cela semble comme une tâche facile, et il ya beaucoup de questions concernant ce sujet mais aucun ne qui a résolu mon problème, évidemment. Alors peut-être que je suis absent quelque chose d'évident. Je reçois une poignée à mon avis par:
ImageView myView = (ImageView)getWindow().findViewById(R.id.MyViewID);
Cela fonctionne bien, mais lors de l'appel d' getWidth()
, getHeight()
, getMeasuredWidth()
, getLayoutParams().width
, etc., ils retournent tous 0. J'ai aussi essayé manuellement appelant measure()
sur la vue suivi par un appel à getMeasuredWidth()
, mais n'a pas d'effet.
J'ai essayé d'appeler ces méthodes et l'inspection de l'objet dans le débogueur dans mon activité, en onCreate()
et onPostCreate()
. Comment puis-je déterminer les dimensions exactes de ce point de vue au moment de l'exécution?