android studio添加本地 图片

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android studio添加本地 图片相关的知识,希望对你有一定的参考价值。

  今天要介绍的是Github上一个使用非常广泛的图片异步加载库Android-Universal-Image-Loader,该项目的功能十分强大,可以说是我见过的目前功能最全、性能最优的图片异步加载解决方案。做Android的同学都知道,Android加载大量图片时,由于系统分配给图片加载的内存大小有限,所以,如果加载图片量非常大的话容易报OOM异常,关于这个异常已经有不少解决方案了,我就不赘述。下面就简要介绍下这个开源项目的主要功能和使用:  一、功能概要  多线程图片加载;  灵活更改ImageLoader的基本配置,包括最大线程数、缓存方式、图片显示选项等;  图片异步加载缓存机制,包括内存缓存(软引用)及本地缓存;  对加载过程实现监听和事件处理;  能够配置加载图片的显示选项,包括图片圆角处理和加载完成显示动画等;  二、基本使用  下载jar包universal-image-loader-1.8.5-with-sources.jar并导入工程(这应该不用教了吧)  配置Manifest文件,添加网络请求和访问外部存储的权限,因为要进行网络请求和本地缓存  [html] view plain copy  <uses-permission android:name="android.permission.INTERNET" />  <!-- Include next permission if you want to allow UIL to cache images on SD card -->  <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  3. 实现自定义的MyApplication类,并初始化ImageLoader,注意要在Manifest的Application标签注明  android:name=".MyApplication",否则还是使用的默认的Application类。  [java] view plain copy  public class MyApplication extends Application   @Override  public void onCreate()   super.onCreate();    // This configuration tuning is custom. You can tune every option, you may tune some of them,  // or you can create default configuration by  // ImageLoaderConfiguration.createDefault(this);  // method.  ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(getApplicationContext())  .threadPriority(Thread.NORM_PRIORITY - 2)  .denyCacheImageMultipleSizesInMemory()  .discCacheFileNameGenerator(new Md5FileNameGenerator())  .tasksProcessingOrder(QueueProcessingType.LIFO)  .enableLogging() // Not necessary in common  .build();    //Initialize ImageLoader with configuration  ImageLoader.getInstance().init(config);      4. 配置图片加载及显示选项,此处有多种自定义配置选项,可以查看doc文档一一了解,这里就不赘述(实在太多)  [java] view plain copy  DisplayImageOptions options = new DisplayImageOptions.Builder()  .showStubImage(R.drawable.ic_launcher)  .showImageForEmptyUri(R.drawable.ic_launcher)  .showImageOnFail(R.drawable.ic_launcher)  .cacheInMemory(true)  .cacheOnDisc(false)  .displayer(new RoundedBitmapDisplayer(20))  .build();  5. 使用ImageLoader加载图片,这里以在ListView中为每个item异步加载图片为例,只要在Adapter的getView方法中调用如下方法即完成了异步列表图片加载,其中options是之前定义的图片加载和显示选项,animateFirstListener是当图片第一次加载的监听事件,目的在于显示一个淡入的显示效果动画,可以添加其他事件  另外,本例还实现了当列表滑动过程中暂停加载和在用户手放开时才开始加载的功能,这样的好处是保证在列表图片异步加载的过程中不出现卡顿的现象,保证加载的顺滑性。实现这一功能的手段是使ListView监听一个由ImageLoader包含的监听事件PauseOnScrollListener。  若设置cacheOnDisc(true)的话,则缓存的文件可以在/sdcard/Android/data/[package_name]/cache目录下看到。不过建议定期清理缓存,否则时间一长,SD卡就会被占满了,同时也可以在ImageLoaderConfiguration中配置SD的缓存策略,有限制缓存文件数量的,有限制缓存文件最大尺寸等选项。  如果在使用过程中遭遇OOM异常,则建议在ImageLoaderConfiguration中设置threadPoolSize在1-5之间合适。在DisplayOption配置时使用。 参考技术A 将图片后缀改为.png 直接贴到Drawable上本回答被提问者采纳

androidtheme添加图片

参考技术A android选项菜单怎么添加图片
android选项菜单怎么添加图片,Android图片选择框架--PictureSelector

weixin_39756235
转载
关注
0点赞·464人阅读
图片.png

功能特点

支持通过拍照获取图片

支持通过相册获取图片

支持图片裁切

支持仿IOS底部弹出选择菜单ActionSheet效果

支持6.0动态授予权限

解决图片有黑边问题

解决7.0调用相机crash问题

解决小米miui系统调用系统裁剪图片功能crash问题

使用

Step 1. 添加JitPack仓库

在项目的build.gradle添加JitPack仓库

allprojects

repositories

...

maven url "https://jitpack.io"





Step 2. 添加依赖

在需要使用的module中添加依赖

dependencies

compile 'com.github.wildma:PictureSelector:1.0.0'



或者引用本地lib

compile project(':pictureselector')

Step 3. 配置清单文件所需activity

android:name="com.wildma.pictureselector.PictureSelectActivity"

android:theme="@android:style/Theme.Translucent.NoTitleBar"/>

Step 4. 拍照或者从相册选择图片

/**

* create方法参数一是上下文,在activity中传activity.this,在fragment中传fragment.this。参数二为请求码,用于结果回调onActivityResult中判断

* selectPicture方法参数分别为图片的裁剪宽、裁剪高、宽比例、高比例。默认不传则为宽200,高200,宽高比例为1:1。

*/

PictureSelector

.create(MainActivity.this, PictureSelector.SELECT_REQUEST_CODE)

.selectPicture(200, 200, 1, 1);

Step 5. 获取裁剪后的图片地址

@Override

protected void onActivityResult(int requestCode, int resultCode, Intent data)

super.onActivityResult(requestCode, resultCode, data);

/*结果回调*/

if (requestCode == PictureSelector.SELECT_REQUEST_CODE)

if (data != null)

String picturePath = data.getStringExtra(PictureSelector.PICTURE_PATH);

以上是关于android studio添加本地 图片的主要内容,如果未能解决你的问题,请参考以下文章

如何在Android Studio添加本地aar包引用

集成其他库 - Android Studio

Android Studio HTTP Proxy怎么设置

android studio 中的http proxy怎么设置

Android studio 添加背景图片问题

androidstudioitem布局放图片和文字