动态添加图像到gridview

时间:2011-10-17 06:51:15

标签: android image

如何在网格视图中动态添加网格项?目前,我有一个包含我的图像的适配器。我想从URL获取图像并将其动态添加到网格视图中。我使用以下代码从url下载图像

                try {
            URL myFileUrl =null;  
         myFileUrl= new URL(imageUrl);

          HttpURLConnection conn= (HttpURLConnection)myFileUrl.openConnection();
    conn.setDoInput(true);
    conn.connect();
    InputStream is = conn.getInputStream();

    bmImg = BitmapFactory.decodeStream(is);
    //images[i].setImageBitmap(bmImg);
      }       catch (Exception e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
  }

以下是mu base image adpater class

      public class ImageAdapter extends BaseAdapter{
    Context mContext;
    public static final int ACTIVITY_CREATE = 10;
    public ImageAdapter(Context c){
        mContext = c;
    }
    @Override
    public int getCount() {
        // TODO Auto-generated method stub
        return 9;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        // TODO Auto-generated method stub
        View v;
        if(convertView==null){
            LayoutInflater li = getLayoutInflater();
            v = li.inflate(R.layout.icon, null);
            TextView tv = (TextView)v.findViewById(R.id.icon_text);
            tv.setText("Profile "+position);
            ImageView iv = (ImageView)v.findViewById(R.id.icon_image);
            iv.setImageResource(R.drawable.ondamoveicon);

        }
        else
        {
            v = convertView;
        }
        return v;
    }
    @Override
    public Object getItem(int position) {
        // TODO Auto-generated method stub
        return null;
    }
    @Override
    public long getItemId(int position) {
        // TODO Auto-generated method stub
        return 0;
    }
}

现在我的问题是我想显示通过适配器中的url下载的图像。我们将如何将这些图像传递给适配器类。

现在我正在获取gridview中所有位置的最后一张图片

任何人都可以帮助我 感谢

2 个答案:

答案 0 :(得分:3)

  1. 增加适配器类的数量。

  2. 您必须使用一些资源数组,它将存储图像。下载新图像后,将计数增加1,然后使用新图像更新资源数组。

  3. call adapter.notifyDataSetChanged()。

  4. 这将刷新gridView。

答案 1 :(得分:0)

您可以尝试使用LazyList,在主XML中可以将listview转换为gridview。