2

在几次尝试实现一个简单的滑动图片库失败后,我终于按照本教程实现了一些接近我想要的方式的东西:http ://androidtrainningcenter.blogspot.dk/2012/10/viewpager-example-in -android.html

但是,我在 ViewPager 中的 ImageViews 中的图像被拉伸到屏幕的角落,我根本不知道如何修复它。我已经调整了我可能找到的每个 march_parent 和 wrap_content,但没有任何区别。

我怀疑这种方法可能是编辑的权利:

public Object instantiateItem(View collection, int position) {
    ImageView view = new ImageView(activity);
    view.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,
            LayoutParams.MATCH_PARENT));
    view.setScaleType(ScaleType.CENTER_INSIDE);
    view.setBackgroundResource(imageArray[position]);
    ((ViewPager) collection).addView(view, 0);
    return view;
}

我玩过 .setScaleType 方法,但无论我将它设置为什么,它都没有任何区别。我的其余代码直接从链接教程中复制,除了特定的可绘制资源。

4

1 回答 1

2

是的,这是编辑的正确位置,您需要使用 view.setImageResource() 而不是 setBackgroundResource()。

我也发生了同样的事情,如果我怀疑它是背景,则不会应用您设置的属性。让我知道这是否适合你。

@Override
public Object instantiateItem(View container, int position) {
    ImageView view = new ImageView(activity);
    view.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.MATCH_PARENT));
    view.setAdjustViewBounds(true);
    view.setScaleType(ScaleType.FIT_CENTER);
    view.setImageResource(imageArray[position]);
    ((ViewPager) container).addView(view, 0);
    return view;
}
于 2013-06-10T12:06:29.973 回答