2011-05-05 113 views
5

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

+0

得到了解决这个问题的任何解决方案? – Prabs 2015-06-08 10:27:04

回答

2

为网格视图创建自定义适配器。并为该网格视图设置该自定义适配器。 以下是网格项目的xml代码。

<linearlayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/GridItem" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content"> 

     <imageview android:id="@+id/grid_item_image" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content"> 
     </imageview> 
    </linearlayout> 

这里是用于主布局的xml。

<gridview xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/GridView1" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    </gridview> 

,这里是从BaseAdapter

public class ImageAdapter extends BaseAdapter 
    { 
    Context context; 

    public ImageAdapter(Context context) 
    { 
    context = context; 
    } 

    @Override 
    public int getCount() 
    { 
    //return numbers of element u want on the grid 
    return 9; 
    } 

    @Override 
    public View getView(int position, View convertView, ViewGroup parent) 
    { 
    View v = convertView; 

    if (convertView == null) 
    { 
     //here we inflat the layout 
     LayoutInflater li = getLayoutInflater(); 
     v = li.inflate(R.layout.grid_item, null); 

     //here add the image  
     ImageView iv = (ImageView)v.findViewById(R.id.grid_item_image); 
     iv.setImageResource(R.drawable.icon); 
    } 

    return v; 
    } 

    @Override 
    public Object getItem(int arg0) { 
    // TODO Auto-generated method stub 
    return null; 
    } 

    @Override 
    public long getItemId(int arg0) { 
    // TODO Auto-generated method stub 
    return 0; 
    } 
    } 

希望这可以帮助ü扩展自定义适配器类。

+1

...和?创建适配器并将其附加到GridView并不能解决原来的海报问题:*我想从**网址**和**中动态获取我的图像**将它们添加到我的网格视图*中。 – 2013-07-09 11:22:09

+0

@IndrekKõue如果你仍然陷入困境,也许我可以帮助你不同的东西 – 2013-08-04 17:30:08

+0

伟大的工作。谢谢 – 2014-05-23 06:40:18