Android 获取本地图片实现图片轮播
2018-03-14 10:15
295 查看
刚开始做这个项目的时候我是通过直接获取本地图片实现轮播,但是这样做的话有一个很严重的问题就是每次运行15分钟左右就会发生内存溢出,所以我改成下面的方式去获取本地图居然不会发生溢出了。
1、我建立一个类用于获取本地图片:
public class ImagePathFromSD {
public static List<Bitmap> getImagePathFromSD(String path) {
List<Bitmap> bitmapList = new ArrayList<Bitmap>();
// 得到该路径文件夹下所有的文件
File fileAll = new File(path);
File[] files = fileAll.listFiles();
if (files != null && files.length > 0) {
for (int i = 0; i < files.length; i++) {
File file = files[i];
FileInputStream fis = null;
try {
fis = new FileInputStream(file.getPath());
Bitmap bitmap = BitmapFactory.decodeStream(fis);
bitmapList.add(bitmap);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
return bitmapList;
}
}
这里的参数path就是传递一个本地图片的路径例如:
private String path = "/sdcard/image/";
2、获取本地图片
private List<Bitmap> bitmapList = ImagePathFromSD.getImagePathFromSD(path);
3、就是显示图片
这里我是在适配器里面的使用大概如下
ImageView imageView = (ImageView) view.findViewById(R.id.image_view);
imageView.setImageBitmap(bitmapList.get(position));
1、我建立一个类用于获取本地图片:
public class ImagePathFromSD {
public static List<Bitmap> getImagePathFromSD(String path) {
List<Bitmap> bitmapList = new ArrayList<Bitmap>();
// 得到该路径文件夹下所有的文件
File fileAll = new File(path);
File[] files = fileAll.listFiles();
if (files != null && files.length > 0) {
for (int i = 0; i < files.length; i++) {
File file = files[i];
FileInputStream fis = null;
try {
fis = new FileInputStream(file.getPath());
Bitmap bitmap = BitmapFactory.decodeStream(fis);
bitmapList.add(bitmap);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
return bitmapList;
}
}
这里的参数path就是传递一个本地图片的路径例如:
private String path = "/sdcard/image/";
2、获取本地图片
private List<Bitmap> bitmapList = ImagePathFromSD.getImagePathFromSD(path);
3、就是显示图片
这里我是在适配器里面的使用大概如下
ImageView imageView = (ImageView) view.findViewById(R.id.image_view);
imageView.setImageBitmap(bitmapList.get(position));
相关文章推荐
- Android中ConvenientBanner的使用--获取本地图片 --(实现效果是自动轮播图片)
- android获取拍照图片、本地图片简单实现!
- android获取拍照图片、本地图片简单实现!
- Android仿人人客户端(v5.7.1)——对从服务器端(网络)获取的图片进行本地双缓存处理(编码实现)
- Android中ConvenientBanner的使用--获取网络图片 --(实现效果是自动轮播图片)
- Android 无缝轮播实现——本地加载图片轮播(一)
- Android ViewPager从网络获取图片实现无限轮播
- android 获取本地全部图片列表的实现及源码下载(一)
- Android本地缓存和远程图片获取的实现
- 图片、缓存-Android仿人人客户端(v5.7.1)——对从服务器端(网络)获取的图片进行本地双缓存处理(编码实现)-by小雨
- Android实现从SD卡指定路径获取图片进行轮播
- Android使用自定义控件实现加载本地图片无限轮播
- android ViewPager实现的轮播图广告自定义视图,网络获取图片和数据
- android图片轮播第一弹_异步获取和本地获取图片_轻量级可集成到项目中型
- Android获取本地相册图片和拍照获取图片的实现方法
- android中ViewPager+Picasso 实现轮播本地和网络图片源码
- android 获取本地全部图片列表的实现及源码下载(二)
- android 获取本地全部图片列表的实现及源码下载(二)
- Android仿人人客户端(v5.7.1)——对从服务器端(网络)获取的图片进行本地双缓存处理(编码实现)
- android 获取本地全部图片列表的实现及源码下载(一)