【问题标题】:Android: Unwanted Image stretching in ViewPagerAndroid:ViewPager 中不需要的图像拉伸
【发布时间】:2013-05-24 12:12:32
【问题描述】:

在多次尝试实现一个简单的滑动图片库失败后,我终于按照本教程实现了一些接近我想要的方式的东西: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 方法,但无论我将它设置为什么,它都没有任何区别。我的其余代码是直接从链接教程中复制的,除了特定的可绘制资源。

【问题讨论】:

    标签: android-viewpager image-scaling


    【解决方案1】:

    是的,这是编辑的正确位置,您需要使用 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;
    }
    

    【讨论】:

      猜你喜欢
      • 2017-01-09
      • 1970-01-01
      • 2021-09-26
      • 2014-06-03
      • 2014-03-29
      • 1970-01-01
      • 2014-02-17
      • 1970-01-01
      相关资源
      最近更新 更多