1

我已经处理了几个小时。我需要一些帮助。我在 ViewPager 中有这个 ImageView。除了图像无法达到显示宽度外,一切都很好。我希望它水平居中,但无论我更改什么设置,我都无法使其工作。

我使用了 Layout params, setRule, ... 由于 ImageView 没有 setGravity 我应该选择什么方法?首先新建一个线性或相对布局,然后将图像视图添加到其中?没有更合理的方法来让 ImageView 对齐中心吗?

这是我在 ViewPager 的适配器中的代码:

public Object instantiateItem(final ViewGroup container, final int position) {
    if (context == null)
        return null;
    final ImageView imageView = new ImageView(context);
    if (propertyImagesIDs == null || propertyImagesIDs.length == 0 || context == null) {
        return null;
    }
    new PropertyPhotoProxy().run(new Response.Listener<Photo>() {
        @Override
        public void onResponse(Photo photo) {
            imageView.setImageBitmap(photo.getBitmap());
            imageView.setScaleType(ImageView.ScaleType.FIT_START);
            ((ViewPager) container).addView(imageView, 0);

        }
    }, new DefaultErrorListener(), propertyImagesIDs[position]);

    return imageView;
}

这是图像在屏幕中的对齐方式,无论我更改什么设置。

在此处输入图像描述

4

1 回答 1

0
 ImageView.ScaleType.FIT_START

不是你需要的。width它保持纵横比并尝试在和之间的至少一个上填充 dest height。您可能想使用CENTER_INSIDECENTER_CROP

于 2015-11-18T12:53:22.687 回答