首先Activity.java的写法如下
packagecom.lujianfei.active;
importjava.util.ArrayList;
importjava.util.HashMap;
importandroid.app.Activity;
importandroid.graphics.Bitmap;
importandroid.os.Bundle;
importandroid.view.View;
importandroid.widget.GridView;
importandroid.widget.ImageView;
importandroid.widget.SimpleAdapter;
importandroid.widget.SimpleAdapter.ViewBinder;
importcom.lujianfei.data.IData;
importcom.lujianfei.data.IDataFactory;
importcom.lujianfei.util.BitmapHelper;
publicclassVideoprojActivityextendsActivity {
IData data =null;
IDataFactory dataFactory =null;
GridView gridview =null;
/** Called when the activity is first created. */
@Override
publicvoidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.videoproj_gridview_layout);
gridview = (GridView) findViewById(R.id.gridview);
ArrayList> list=newArrayList>();
HashMap map=null;
for(inti=0;i<3;i++)
{
map=newHashMap();
map.put("ItemImage",BitmapHelper.getBitmap("http://192.168.1.119:8080/strutsproj/upload/type1.jpg"));
map.put("ItemText","ItemText"+i);
list.add(map);
}
SimpleAdapter adapter =newSimpleAdapter(this,list,R.layout.videoproj_gridview_item_layout,newString[]{"ItemImage","ItemText"},newint[]{R.id.ItemImage,R.id.ItemText});
adapter.setViewBinder(newViewBinder(){
publicbooleansetViewValue(View view, Object data,
String textRepresentation) {
//判断是否为我们要处理的对象
if(viewinstanceofImageView && datainstanceofBitmap){
ImageView iv = (ImageView) view;
iv.setImageBitmap((Bitmap) data);
returntrue;
}else
returnfalse;
}
});
gridview.setAdapter(adapter);
}
}
package com.lujianfei.active;
import java.util.ArrayList;
import java.util.HashMap;
import android.app.Activity;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.view.View;
import android.widget.GridView;
import android.widget.ImageView;
import android.widget.SimpleAdapter;
import android.widget.SimpleAdapter.ViewBinder;
import com.lujianfei.data.IData;
import com.lujianfei.data.IDataFactory;
import com.lujianfei.util.BitmapHelper;
public class VideoprojActivity extends Activity {
IData data = null;
IDataFactory dataFactory = null;
GridView gridview = null;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.videoproj_gridview_layout);
gridview = (GridView) findViewById(R.id.gridview);
ArrayList> list=new ArrayList>();
HashMap map=null;
for(int i=0;i<3;i++)
{
map=new HashMap();
map.put("ItemImage",BitmapHelper.getBitmap("http://192.168.1.119:8080/strutsproj/upload/type1.jpg"));
map.put("ItemText","ItemText"+i);
list.add(map);
}
SimpleAdapter adapter = new SimpleAdapter(this,list,R.layout.videoproj_gridview_item_layout,new String[]{"ItemImage","ItemText"},new int[]{R.id.ItemImage,R.id.ItemText});
adapter.setViewBinder(new ViewBinder(){
public boolean setViewValue(View view, Object data,
String textRepresentation) {
//判断是否为我们要处理的对象
if(view instanceof ImageView && data instanceof Bitmap){
ImageView iv = (ImageView) view;
iv.setImageBitmap((Bitmap) data);
return true;
}else
return false;
}
});
gridview.setAdapter(adapter);
}
}
核心类 BitmapHelper.java
packagecom.lujianfei.util;
importjava.io.IOException;
importjava.io.InputStream;
importjava.net.HttpURLConnection;
importjava.net.MalformedURLException;
importjava.net.URL;
importandroid.graphics.Bitmap;
importandroid.graphics.BitmapFactory;
publicclassBitmapHelper {
publicstaticBitmap getBitmap(String imageUrl) {
Bitmap mBitmap =null;
try{
URL url =newURL(imageUrl);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
InputStream is = conn.getInputStream();
mBitmap = BitmapFactory.decodeStream(is);
}catch(MalformedURLException e) {
e.printStackTrace();
}catch(IOException e) {
e.printStackTrace();
}
returnmBitmap;
}
}
package com.lujianfei.util;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
public class BitmapHelper {
public static Bitmap getBitmap(String imageUrl) {
Bitmap mBitmap = null;
try {
URL url = new URL(imageUrl);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
InputStream is = conn.getInputStream();
mBitmap = BitmapFactory.decodeStream(is);
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return mBitmap;
}
}
videoproj_gridview_layout.xml
android:id="@+id/gridview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:numColumns="auto_fit"
android:verticalSpacing="10dp"
android:horizontalSpacing="10dp"
android:columnWidth="90dp"
android:stretchMode="columnWidth"
android:gravity="center"
/>
android:id="@+id/gridview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:numColumns="auto_fit"
android:verticalSpacing="10dp"
android:horizontalSpacing="10dp"
android:columnWidth="90dp"
android:stretchMode="columnWidth"
android:gravity="center"
/>
videoproj_gridview_item_layout.xml
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingBottom="4dip">
android:id="@+id/ItemImage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true">
android:id="@+id/ItemText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/ItemImage"
android:layout_centerHorizontal="true"
android:text="TextView01">
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingBottom="4dip" >
android:id="@+id/ItemImage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true" >
android:id="@+id/ItemText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/ItemImage"
android:layout_centerHorizontal="true"
android:text="TextView01" >
运行效果如下