详解Android读取本地图片和网络图片的方法

Android读取本地图片和网络图片:
public void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   setContentView(R.layout.main);
   ImageView image = (ImageView) findViewById(R.myImage.imageview);
   //Bitmap bitmap = getLoacalBitmap(“/images/1.jpg”); //从本地取图片
   Bitmap bitmap = getHttpBitmap(“http://t1.baidu.com/it/u=1966865594,1522122112&fm=52&gp=0.jpg”); //从网上取图片

   image .setImageBitmap(bitmap); //设置Bitmap
}
/**
* 加载本地图片
* @param url
* @return
*/
public static Bitmap getLoacalBitmap(String url) {
try {
    FileInputStream fis = new FileInputStream(url);
    return BitmapFactory.decodeStream(fis);
} catch (FileNotFoundException e) {
    e.printStackTrace();
    return null;
}
}

/**
* 加载网络图片
* @param url
* @return
*/
public static Bitmap getHttpBitmap(String url) {
  URL myFileUrl = null;
  Bitmap bitmap = null;
try {
   myFileUrl = new URL(url);
} catch (MalformedURLException e) {
   e.printStackTrace();
}
try {
   HttpURLConnection conn = (HttpURLConnection) myFileUrl.openConnection();
   conn.setConnectTimeout(0);
   conn.setDoInput(true);
   conn.connect();
  InputStream is = conn.getInputStream();
  bitmap = BitmapFactory.decodeStream(is);
  is.close();
} catch (IOException e) {
  e.printStackTrace();
}
return bitmap;
}


注意:在AndroidManifest.xml文件的</manifest>节点上面添加

<uses-permission 
        android:name="android.permission.INTERNET"
        />,这是由于Android有很多的权限限制,否则图片是不能在你的模拟器上显示的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值