Android 网络显示图片

在Android中显示一张网络图片其实是超级简单的,下面就一个非常简单的例子:

Step1:
1、创建你的Activity,本例中以ViewWebImageActivity说明;
2、ViewWebImageActivity中的代码如下:

String urlString ="http://s7.sinaimg.cn/middle/9b82a8c54c10ecacbb686&960";
private ImageView imageView = null;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
imageView = (ImageView)findViewById(R.id.imageview01);
try {
imageView.setImageBitmap(returnBitMap(urlString));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}


}

private Bitmap returnBitMap(String url) throws IOException{
Bitmap bm = null;
URL myFileUrl = null;
try {
myFileUrl = new URL(url);

} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

HttpURLConnection conn = (HttpURLConnection) myFileUrl.openConnection();
conn.setDoInput(true);
conn.connect();
InputStream in = conn.getInputStream();
bm = BitmapFactory.decodeStream(in);
in.close();

return bm;

}

3、其中,returnBitMap(String url) 方法就是具体实现网络图片转换成bitmap。
Step2:
1、修改你的main.xml文件如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<ImageView 
   android:id="@+id/imview"
   android:layout_width="wrap_content"   
   android:layout_height="wrap_content" 
   android:layout_gravity="center" 
   />   
</LinearLayout>
Step3:
1、在你的AndroidManifest.xml文件的</manifest>节点上面添加<uses-permission android:name="android.permission.INTERNET" />,这是由于Android有很多的权限限制,否则图片是不能在你的模拟器上显示的。
posted @ 2012-05-28 22:16  hnrainll  阅读(908)  评论(0编辑  收藏  举报