如何使ImageView的高度成为图像的高度? Android的

时间:2015-09-24 22:38:34

标签: java android xml android-adapter

我有一个充满图片的GridView。这是我的自定义适配器:

    public class ImageAdapter extends ArrayAdapter<String> {

    private final String LOG_TAG = ImageAdapter.class.getSimpleName();

    public ImageAdapter(Activity context, List<String> urls){
        super(context, 0, urls);
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent){
        String url = getItem(position);
        View rootView = LayoutInflater.from(getContext()).inflate(R.layout.grid_item, parent, false);

        ImageView img = (ImageView) rootView.findViewById(R.id.grid_view_item);
        img.setLayoutParams(
                new GridView.LayoutParams(
                        GridView.AUTO_FIT,
                        500));
        img.setScaleType(ImageView.ScaleType.FIT_XY);

        Picasso.with(getContext())
                .load(url)
                .into(img);

        return rootView;
    }
}


你可以看到我把高度设定为500.但我不想要这个 我希望高度是图像的实际高度,就像宽度一样。
我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

使用adjustViewBounds属性将高度强制为正确的尺寸。

<ImageView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:adjustViewBounds="true" />