ImageView中的ScaleType无法正常工作

时间:2016-06-19 11:18:24

标签: android imageview android-volley networkimageview scaletype

我正在尝试使用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,但结果仍然相同。提前谢谢。

1 个答案:

答案 0 :(得分:1)

我认为您的问题是因为wrap_contentwidth使用的height值。尝试使用以下代码,它应该可以工作。

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

当你说wrap_content时,这意味着你要求视图是相同的   图像的heightwidth因此缩放不适用。当你   修复widthheight,然后您可以应用fitXY比例类型。