Programmatisch Position Ansichten in RelativeLayout
Möchte ich meine TextView erscheinen unter meinem Bildansicht in einem RelativeLayout, dass in ein GridView. Ich habe versucht:
public override View GetView(int position, View convertView, ViewGroup parent)
{
RelativeLayout rl = new RelativeLayout(context);
RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.FillParent, ViewGroup.LayoutParams.FillParent);
ImageView imageView;
TextView tv;
imageView = new ImageView(context);
imageView.LayoutParameters = new GridView.LayoutParams(250, 250);
imageView.SetScaleType(ImageView.ScaleType.CenterCrop);
imageView.SetPadding(8, 8, 8, 8);
imageView.SetImageResource(thumbIds[position]);
imageView.Id = position;
lp.AddRule(LayoutRules.Below, position);
lp.AddRule(LayoutRules.CenterHorizontal);
tv = new TextView(context);
tv.Text = stringIds[position].ToString();
tv.SetTextSize(Android.Util.ComplexUnitType.Dip, 20);
tv.SetTextColor(Android.Graphics.Color.WhiteSmoke);
tv.LayoutParameters = lp;
rl.AddView(imageView);
rl.AddView(tv);
return rl;
}
Aber die TextView zeigt immer oben auf der Bildansicht.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Check-out diese Frage.
Beim Aufruf
rl.AddView(tv)
sollten Sie auch die LayoutParamsrl.AddView(tv, lp)
.Haben Sie zu verwenden
Bildansicht.setLayoutParams(lp), um assign params, um Ihre Ansicht.
Wie wollen Sie setLayoutParams() für eine Bildansicht?
Da mein Inhalt ist nicht dynamisch, ich arbeitete, um das Problem ganz einfach durch das editieren mein Bild in Farbe und Platzierung der text unter dem Bild. Dann machte ich, dass der hintergrund für die Bildansicht.