在做android项目时,我们经常需要从本地或者网络读取图片,并转换为Bitmap图片,以便使用,下面是读取本地图片并转换的方法:
-
-
-
-
-
-
-
-
-
-
-
-
-
publicstaticBitmapGetLocalOrNetBitmap(Stringurl)
-
{
-
Bitmapbitmap=null;
-
InputStreamin=null;
-
BufferedOutputStreamout=null;
-
try
-
{
-
in=newBufferedInputStream(newURL(url).openStream(),Constant.IO_BUFFER_SIZE);
-
finalByteArrayOutputStreamdataStream=newByteArrayOutputStream();
-
out=newBufferedOutputStream(dataStream,Constant.IO_BUFFER_SIZE);
-
copy(in,out);
-
out.flush();
-
byte[]data=dataStream.toByteArray();
-
bitmap=BitmapFactory.decodeByteArray(data,0,data.length);
-
data=null;
-
returnbitmap;
-
}
-
catch(IOExceptione)
-
{
-
e.printStackTrace();
-
returnnull;
-
}
-
}
说明:Constant.IO_BUFFER_SIZE 是一个常量而已,可以改成常数,比如2*1024,其实取决于你的图片大小,自己根据图片的大小自己设定吧。。。。
分享到:
相关推荐
在Android开发中,显示GIF图片是一项常见的需求,无论是本地存储的GIF图像还是网络上的资源,都需要一种有效的方法来处理。本篇文章将详细介绍如何在Android应用中利用`Movie`类来显示本地和网络的GIF图片。 首先,...
在Android应用开发中,有时我们需要从本地存储的JSON文件中读取数据,这通常涉及到文件I/O操作和字符编码处理。以下将详细讲解如何在Android中读取本地JSON文件,并解决可能出现的显示乱码问题。 1. **读取本地JSON...
利用android开源库android-gif-drawable和android-async-http不仅能显示本地的gif图片,还能从网络上获取Gif图片并显示.即使是较大的gif图片,也不会报OOM异常。
本文将深入探讨如何在Android中从本地存储和网络读取图片,并将其转换为Bitmap对象,以便在ImageView或其他组件中进行显示。 首先,我们需要理解Bitmap对象在Android中的角色。Bitmap是Android系统中用于表示图像...
本话题将聚焦于如何在Android Studio中下载网络图片并将其显示在应用中,这是一个常见的需求,特别是在创建涉及UI展示的应用时。 首先,要实现这个功能,我们需要使用到Android的网络请求库,比如`Volley`、`OkHttp...
6. **加载进度**:对于大图片或慢速网络,显示加载进度可以让用户知道应用正在工作。 综上所述,Android应用从网络URL获取并显示图片的过程涉及网络请求、数据解析、图片加载及缓存策略等多个环节。使用合适的网络...
总结,通过URL获取网络图片并在Android应用中显示,主要涉及以下几个知识点: 1. 添加第三方库Glide及其依赖。 2. 配置AndroidManifest.xml以允许网络访问。 3. 使用Glide的API加载图片到ImageView。 4. 可选地,...
在Android平台上,获取并显示网络图片是常见的任务,特别是在开发涉及用户界面的应用程序时。这里我们将深入探讨如何在Android中实现这一功能,包括使用Bitmap、内存优化以及使用现代的加载库如Glide或Picasso。 ...
1. **获取网络图片的URL**:首先,你需要一个指向网络图片的URL,可以是静态链接或动态API返回。 2. **创建网络请求**:使用HttpURLConnection或OkHttp等网络库发起GET请求。OkHttp是一个高效的网络库,它提供了...
如何从网络中获取一张图片,并显示出来?? 首先应想到若要从网络资源中获取图片,就需要通过流操作,于是就想到如何创建流。 第一步:指定图片资源的URL 第二步:通过RUL获取一个connection 第三步:通过连接获取...
在Android开发中,读取网络图片是一个常见的需求,特别是在构建应用程序时,比如新闻阅读应用、社交媒体应用等。这个“支持android4.0的读取网络图片完整例子”提供了兼容Android 2.x到Android 4.0版本的解决方案,...
6. **图片缓存**:为了提高用户体验,我们需要对网络图片进行缓存。Android提供了LruCache和DiskLruCache等本地缓存机制,Glide和Picasso等库也已经内置了高效的缓存策略。 7. **图片压缩**:为了避免内存溢出,...
可以使用内存缓存和磁盘缓存,当网络图片未加载时,可以从本地缓存中读取。 6. **错误处理**:处理网络请求可能遇到的异常,如网络未连接、超时、URL无效等,需要有相应的错误回调或重试机制。 7. **优化图片质量*...
在Android中,我们通常使用第三方库如Glide或Picasso来异步加载网络图片。这些库提供了强大的图片缓存机制和加载策略,可以有效提高用户体验。例如,当使用Glide时,可以在`onBindView()`方法中加载图片: ```java...
在Android开发中,实现一个基于Gallery的网络图片和本地图片循环播放功能,是常见的需求,尤其是在制作各种App的启动页、广告轮播或者个人相册等场景。这个功能的实现涉及到了Android UI组件、网络请求、图片加载库...
"Android加载网络图片与本地图片解决OOM问题"这个主题旨在介绍如何有效地解决这些问题。 首先,我们需要理解为什么Android应用容易出现OOM。Android为每个应用程序分配了一定量的内存,当这个限制被超过时,系统会...
1. 使用HttpURLConnection或HttpClient:Android原生支持通过HttpURLConnection或HttpClient发送HTTP请求获取网络图片的URL。首先,创建一个URL对象,然后通过openConnection()方法建立连接。获取输入流后,可以读取...
在Android开发中,"获取本地图片上传"是一个常见的需求,主要涉及到本地图片的查看、选择、上传以及性能优化。以下是对这一主题的详细说明: 1. **本地图片查看**: - Android提供了多种查看本地图片的方式,如...