如何在Android的编程方式创建GridView的图片库? [英] How to create GridView image gallery programmatically in android?

查看:102
本文介绍了如何在Android的编程方式创建GridView的图片库?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想通过程序生成的3x3 GridView控件来显示图像。我想设置每个项目的高度和宽度,通过获取屏幕尺寸。像:

I want to create 3x3 gridview programmatically for displaying images. And I want to set each item height and width by getting screen dimensions. Like:

DisplayMetrics metrics = context.getResources().getDisplayMetrics();
int width = metrics.widthPixels;
int height = metrics.heightPixels;

然后每个项目宽度=屏幕宽度/ 3;

请帮助我的人或者一些链接,以供参考。

Please someone help me or some link for reference.

推荐答案

这是如何编程创建GridView控件,

This is how you can create gridview programmatically,

    GridView grid = new GridView(this);
    grid.setId(ViewIdentification.getId());
    grid.setLayoutParams(new GridView.LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT));
    grid.setBackgroundColor(Color.WHITE);
    grid.setNumColumns(3);
    grid.setColumnWidth(GridView.AUTO_FIT);
    grid.setVerticalSpacing(5);
    grid.setHorizontalSpacing(5);
    grid.setStretchMode(GridView.STRETCH_COLUMN_WIDTH);

添加上述观点来布局。在这里,你可以在显示器的高度和宽度。

Add the above view to your layout. And here you can get the height and width of the display.

DisplayMetrics displaymetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay()
            .getMetrics(displaymetrics);
int width = displaymetrics.widthPixels;
int height = displaymetrics.heightPixels;

这里是适配器类:

And here is the adapter class :

public class ImageAdapter extends BaseAdapter {

    private Context mContext;
    private Bitmap[]mis_fotos;

    public ImageAdapter(Context c) {
        mContext = c;    }

    public int getCount() {
        return mis_fotos.length;
        }

    public Object getItem(int position) {
        return position;    }

    public long getItemId(int position) {
        return 0;    }

    public View getView(int position, View convertView, ViewGroup parent) {
        ImageView imageView;
        if (convertView == null) {
            imageView = new ImageView(mContext);
            imageView.setLayoutParams(new GridView.LayoutParams(width/3, height/3));
            imageView.setScaleType(ImageView.setScaleType(ScaleType.FIT_XY));
            imageView.setPadding(0, 0, 0, 0);
        } else {
            imageView = (ImageView) convertView;
        }
        imageView.setImageBitmap(mis_fotos[position]);
        return imageView;
    }
}

那么,这是高达你,如果你是通过动态的URL,相应地更改您的适配器。 设置你的适配器以你的GridView。 让我知道,如果你有任何问题。

Then, It's upto you, If you are passing dynamic URL, change your adapter accordingly. set your adapter to your gridview. Let me know if you have any issues.

这篇关于如何在Android的编程方式创建GridView的图片库?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆