Comment obtenir une Activité de la fenêtre de largeur et de hauteur?

J'ai un ListFragment qui ajoute 2 points de vue dans le onActivityCreated() la méthode - une MapView Vue générique (persistantes en-tête). Je voudrais la liste pour l'afficher en dessous de la MapView et de l'en-tête en mode portrait et sur le droit de la MapView et en dessous de l'en-tête en mode Paysage. J'aimerais aussi la MapView de la hauteur (en mode portrait) et la largeur (en mode paysage) à un pourcentage de la taille de la fenêtre (moins d'action, de barre d'état et la barre de navigation - si l'un existe sur l'appareil). Pour accomplir cela, je crois que j'aurais besoin pour obtenir la taille de la fenêtre et de calculer le hauteurs, les largeurs et les marges de mise en page pour toutes les 3 vues. J'ai essayé quelques choses recommandé à des questions similaires, mais la solution renvoie toujours à la hauteur/largeur de l'appareil et non la taille de la fenêtre de l'Activité.

Toutes les idées. Merci à l'avance.

  • D'abord merci à tous pour les réponses.J'ai volontairement pas fait de l'utilisation de différentes mises en page avec ViewGroups qui permettent de poids propriétés. La raison pour laquelle je ajouter mon point de vue dynamiquement en est ainsi, les ListActivity gère mon vide et "chargement" des états. Avec mon approche actuelle tout ce que j'ai à faire est de dire à la ListActivity ce que ma vue vide est et de l'ensemble de la liste de l'adaptateur lorsque j'ai des données. De cette façon, les utilisateurs verront ma vue vide lorsque la liste est vide et une Barre de progression lorsque c'est le chargement. Ma principale question est de savoir comment je peux obtenir la largeur/hauteur de la programmation.
  • J'ai fini par l'ajout d'un GlobalLayoutListener de la vue pour obtenir la largeur et la hauteur.
InformationsquelleAutor oracleicom | 2012-09-14