Taille du dialogue personnalisé pour correspondre à Theme.Holo.Light.Dialog
Si j'ai une Activité qui a c'est le thème de Theme.Holo.Light.Dialog
à l'échelle de la grande. Il remplira l'écran sur les téléphones en mode portrait presque entièrement, mais en mode paysage, il ne s'étire pas trop long. Par exemple, sur cette photo de Google, vous pouvez voir la boîte de dialogue de ne pas remplir la totalité de l'écran.
Il ne soit un effondrement de correspondre à la largeur du titre comme ce qui se passera si vous avez votre propre boîte de Dialogue construire par le fait d'avoir une classe qui étend la classe de boîte de Dialogue.
C'est ce qui va se passer avec ma mise en page.
Les propriétés que dois-je appliquer pour le LinearLayout pour rendre compte de l'échelle jolie?
source d'informationauteur MikkoP
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser
Theme.Holo.Light.Dialog.MinWidth
pour le dimensionnement de la mise en page correctement.À partir de la documentation:
La manière de l'utiliser, ce serait à travers le passage d'un ContextThemeWrapper en place de Contexte (à l'aide) de votre personnalisé de la boîte de Dialogue constructeur:
C'est de cette façon
Theme.Holo.Light.Dialog.MinWidth
est défini:De
dimens.xml
:@android:dimen/dialog_min_width_major:
@android:dimen/dialog_min_width_minor:
Comme il semble, la boîte de dialogue de la largeur de l'image que vous avez posté est autour de 65%. En mode portrait, il serait de 95%.
Honnêtement, la largeur ne ressemble pas à 95 % en mode portrait, mais c'est mieux qu'avant :):
Juste ajouter deux valeurs de votre thème personnalisé.
E. g.
Dans mon dialogue personnalisée-je utiliser les propriétés suivantes et de dialogue jeu de largeur pour correspondre parent et c'est la largeur de l'échelle correctement.
Pouvez-vous essayer de changer votre Dialogue dimension au moment de l'exécution, comme ceci:
ou
si vous utilisez des Fragments.
Deux Scénarios
un. Si vous en avez besoin pour remplir complètement l'écran définir vos parents
minWidth
etminHeight
à1000dp
b. Si vous en avez besoin à l'échelle sans remplir tout l'écran. L'un des enfants de votre
LinearLayout
dans unRelativeLayout
et définir larelative layouts width to match_parent
.