2017-06-07 20 views
-1

J'essaie de définir dynamiquement la hauteur d'ImageView dans le projet Xamarin droid, mais pas dans le core.Réglage dynamique de la largeur d'ImageView dans un projet Android Xamarin

LinearLayout layout4 = new LinearLayout(Activity); 
layout4.LayoutParameters = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.WrapContent, ViewGroup.LayoutParams.WrapContent); 
layout4.SetGravity(GravityFlags.Center); 
layout4.Orientation = Orientation.Vertical; 

Je ne suis pas en mesure de définir:

layout4.Height = 20; 

Mise en erreur: la propriété ou indexeur ne peut pas être affecté, il est lu seulement

Répondre

0

Utilisez LayoutParams:

LinearLayout layout4 = new LinearLayout(this); 
LinearLayout.LayoutParams parameters = new LinearLayout.LayoutParams(currentWidth, 20/*desired height*/); 
layout4.LayoutParameters = parameters; 
0

Cela est dû au fait que le champ Java hauteur du LinearLayout n'est pas accessible via l'instance mais avec LayoutParams.

Vous pouvez définir la hauteur souhaitée lors de la création de l'instance LayoutParams.

layout4.LayoutParameters = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.WrapContent, 20); 

Mais, si vous souhaitez modifier cette valeur après la LayoutParams a été créé et défini, vous pouvez le faire comme ceci:

layout4.LayoutParameters.Height = 20;