Frage Festlegen der Schwerkraft von ImageView zur Mitte in Android programmgesteuert


Ich möchte die Schwere einer Reihe von Bildansichten, ImageIcons [i] mit folgendem Code in die Mitte setzen:

ImageIcons[i] = new ImageView(this);
ImageIcons[i].setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT));
layout.addView(ImageIcons[i]);

Und ich stehe fest, während ich die Schwerkraft setze. Ich bitte die SO-Leute, mich dabei zu unterstützen.

Vielen Dank


35
2017-11-04 06:15


Ursprung


Antworten:


Versuche dies

LinearLayout.LayoutParams layoutParams=new LinearLayout.LayoutParams(width, height);
layoutParams.gravity=Gravity.CENTER;
ImageIcons[i].setLayoutParams(layoutParams);

79
2017-11-04 06:24



Holen Sie die Layoutparameter aus der Ansicht, ändern Sie sie und legen Sie sie erneut fest.

image.setBackgroundResource(R.drawable.mobile);
LayoutParams params = (LayoutParams) image.getLayoutParams();
params.gravity = Gravity.CENTER;
image.setLayoutParams(params);

8
2017-12-02 14:16



Zuerst machte die Breite zu match_parent und dann setzen Sie die Schwerkraft, sonst Schwerkraft funktioniert nicht. Hoffe, es wird funktionieren.

ImageIcons[i].setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,
LayoutParams.WRAP_CONTENT));
ImageIcons.setGravity(Gravity.CENTER);

3
2017-11-04 06:40



ImageView myImage = new ImageView(this);
FrameLayout.LayoutParams myImageLayout = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT,FrameLayout.LayoutParams.WRAP_CONTENT);
myImageLayout.gravity=Gravity.CENTER_HORIZONTAL | Gravity.CENTER_VERTICAL;
            myImage.setLayoutParams(myImageLayout);

3
2018-05-08 05:57



    LinearLayout llBasicInfo = new LinearLayout(context);
    llBasicInfo.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
    llBasicInfo.setOrientation(LinearLayout.VERTICAL);
    ImageView imageView = new ImageView(context);
    LinearLayout.LayoutParams layoutParams =new LinearLayout.LayoutParams(200,200);
    layoutParams.gravity=Gravity.CENTER;
    imageView.setLayoutParams(layoutParams);
    llImage.addView(imageView);

0
2017-11-26 05:34