ImageView中的ScaleType不起作用

5

我正在尝试使用ViewPager和Volley的NetworkImageView制作图库。 ViewPager和图片检索方面一切正常。但是,当我将位图放入NetworkImageView时,图像未被拉伸以填充NetworkImageView的大小。对于其他ImageView,设置scaleType可以正常工作。

<com.android.volley.toolbox.NetworkImageView
    android:id="@+id/imageView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:scaleType="fitXY" />

我的XML文件
public static class SwipeFragment extends Fragment {

    ImageLoader imageLoader = AppController.getInstance().getImageLoader();

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View swipeView = inflater.inflate(R.layout.swipe_fragment, container, false);
        NetworkImageView imageView = (NetworkImageView) swipeView.findViewById(R.id.imageView);
        Bundle bundle = getArguments();
        int position = bundle.getInt("position");
        if (imageLoader == null) {
            imageLoader = AppController.getInstance().getImageLoader();
        }
        imageView.setImageUrl(fotoUrl.get(position), imageLoader);
        return swipeView;

    }

    static SwipeFragment newInstance(int position) {
        SwipeFragment swipeFragment = new SwipeFragment();
        Bundle bundle = new Bundle();
        bundle.putInt("position", position);
        swipeFragment.setArguments(bundle);
        return swipeFragment;
    }
}

我的Java

对于这个问题有什么想法吗? 我也尝试将scaleType更改为fitCenter,但结果仍然相同。提前感谢您的帮助。


这适用于所有使用 wrap_content 宽度和高度的 ImageView,缩放不会应用。与 Volley 的 ImageView 无关。 - Arpit Ratan
1个回答

5

我认为你的问题是由于宽度和高度使用了wrap_content值所引起的。尝试使用以下代码,应该可以解决。

<com.android.volley.toolbox.NetworkImageView
    android:id="@+id/imageView"
    android:layout_width="100dp"
    android:layout_height="100dp"
    android:scaleType="fitXY" />

当您使用“wrap_content”时,意味着您要求视图与图像的高度和宽度相同,因此不适用缩放。当您固定宽度和高度时,可以应用fitXY比例类型。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接