handler.obtainMessage=Message msg;//这种方式获取消息对象节省资源 msg.obj=bm;//obj 封转消息内容 msg.what=1;//what 封装消息类型(成功|失败); handle.sendMessage(msg)//发消息 final File file = new File(getCacheDir(), getNameFromUrl(spec));//第一个参数文件存放路径,第二个是文件名 //接下来就要定义文件输出流了 if(conn.getResponseCode() == 200){ //6.拿到服务器返回的流 InputStream is = conn.getInputStream(); //从流中读取图片的数据,然后把数据保存到本地 byte[] b = new byte[1024]; int len; FileOutputStream fos = new FileOutputStream(file); while((len = is.read(b)) != -1){ fos.write(b, 0, len); } fos.close(); //通过本地路径构造一张位图对象 Bitmap bm = BitmapFactory.decodeFile(file.getAbsolutePath()) //从流中读取一张位图 Bitmap bm=BitmapFactory.decodeStream(is) conn.setDoOutput(true);//必须设置这个给服务器的输出流才可用,文件上传
两种构建位图的方式
最新推荐文章于 2022-12-15 13:04:29 发布