网络图片设置为手机背景
给手机上面的图片设置为背景
之前一直想做一个浏览汽车图片的app,并将自己喜欢的汽车图片设置成手机背景,因为一直在工作没有什么时间搞,现在自己写了一个mvp的小项目,虽然跟之前想到做汽车图片浏览app(DanShiApp)不一样,但是也有图片浏览的相关模块,所以就一起实现了设置手机背景的功能,废话多少先上代码
设置手机背景需要添加权限
<uses-permission android:name="android.permission.SET_WALLPAPER_HINTS"/><uses-permission android:name="android.permission.SET_WALLPAPER"/>
复制代码try {WallpaperManager instance = WallpaperManager.getInstance(WallPicActivity.this);
int desiredMinimumWidth = getWindowManager().getDefaultDisplay().getWidth();
int desiredMinimumHeight = getWindowManager().getDefaultDisplay().getHeight();
instance.suggestDesiredDimensions(desiredMinimumWidth, desiredMinimumHeight);
instance.setBitmap(bitmap);
Toast.makeText(WallPicActivity.this,"壁纸设置成功",Toast.LENGTH_SHORT).show();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}
这里的bitmap 时间网络请求的url 转化成的,可以用下面这个方法
/*** 根据图片的url路径获得Bitmap对象* @param url* @return*/
private Bitmap returnBitmap(String url) {URL fileUrl = null;Bitmap bitmap = null;try {fileUrl = new URL(url);} catch (MalformedURLException e) {e.printStackTrace();}try {HttpURLConnection conn = (HttpURLConnection) fileUrl.openConnection();conn.setDoInput(true);conn.connect();InputStream is = conn.getInputStream();bitmap = BitmapFactory.decodeStream(is);is.close();} catch (IOException e) {e.printStackTrace();}return bitmap;}
不过我用的是picasso 框架转化的
Bitmap bitmap = Picasso.with(context).load(bitmapUrl).get();
可能需要注意的几点,这些方法是要异步操作的,我用的是Rxjava操作的这里也贴上代码
/**
*把图片设置成手机壁纸
*/
private void makeWallpaper() {Observable.create(new Observable.OnSubscribe<Bitmap>() {@Overridepublic void call(Subscriber<? super Bitmap> subscriber) {Bitmap bitmap = null;try {bitmap = Picasso.with(MeiZhiDetailActivity.this).load(bitmapUrl).get();} catch (IOException e) {e.printStackTrace();}subscriber.onNext(bitmap);subscriber.onCompleted();}}).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Subscriber<Bitmap>() {@Overridepublic void onCompleted() {Toast.makeText(MeiZhiDetailActivity.this, "壁纸设置成功", Toast.LENGTH_SHORT).show();}@Overridepublic void onError(Throwable e) {}@Overridepublic void onNext(Bitmap bitmap) {try {WallpaperManager instance = WallpaperManager.getInstance(MeiZhiDetailActivity.this);int desiredMinimumWidth = getWindowManager().getDefaultDisplay().getWidth();int desiredMinimumHeight = getWindowManager().getDefaultDisplay().getHeight();instance.suggestDesiredDimensions(desiredMinimumWidth, desiredMinimumHeight);instance.setBitmap(bitmap);} catch (IOException e) {e.printStackTrace();}}});}
好了基本的步骤大概就是这些,大家也把喜欢的图片设置成手机壁纸吧!
网络图片设置为手机背景相关推荐
- html根据PC手机设置不同背景图,Html-根据不同的分辨率设置不同的背景图片
@media only screen and (min-width: 1024px) //当分辨率width >= 1024px 时使用1.jpg作为背景图片 { .bg{ backgr ...
- php网页全屏背景图代码,HTML5 body设置全屏背景图片的示例代码
用什么代码实现?不允许有白色底色产生,因为手机高度不一样 设计图要标准(750)确认是背景图(通屏底图)应用场景:移动端宣传页面或者活动页面 错误的写法:加到div中结合图片设置min-height, ...
- 仅仅有人物没背景的图片怎么弄_设置微信聊天背景里怎么就一张白色的,没有可供下载的背景图...
在新版的微信中,不仅仅是设置一个通用的聊天背景,还可以为每一个不同的聊天人设置不同的背景,怎样设置聊天背景呢,见下文. 为不同的聊天对象设置不同的背景 1.这是新版本微信的功能,对于旧版本请更新到新版 ...
- android系统密码设置功能,手机锁屏密码怎么设置 三种安卓手机锁屏方式推荐
手机中有很多应用都是与金钱挂钩,特别是微信与支付宝等等既涉及到隐私又与财产关联,这是后手机的安全就尤为重要的,而手机的锁屏密码就是一道最基本的防护措施,那么手机锁屏密码怎么设置?来看看小编推荐的三种安 ...
- Android——设置布局的背景颜色
//设置布局的背景颜色 linearLayout.setBackgroundColor(getResources().getColor(R.color.color_blue)); 要求版本API 16
- java文本框背景_background 设置文本框背景图
background 属性的作用是给元素设置背景,它是一个复合属性,常用的子属性如下: background-color 指定元素的背景颜色. background-image 指定元素的背景图像. ...
- corners边框_安卓中设置(shape)圆角背景和边框(stroke)相关的问题
最近开发的项目中使用的圆角背景和边框比较多,基本都是使用shape文件和.9图片实现的.但在实现的过程中也是会出现一些小问题,这篇随笔会总结下来其中遇到的问题. 一,圆角大小不一致 1,四周圆角都为1 ...
- PHP设置文本框背景透明度,如何给background-image设置透明度?
如题,现在是没法改图片本身的透明度,该图片以 background-image 写在 css 里,不知道有没有办法给他设置透明度?div{ position: relative; } div:afte ...
- 改变窗口背景_办公软件操作技巧063:如何设置ppt母版背景
在日常工作中,我们经常会做一些PPT演示文档,在制作过程中都会些添加背景图片用来美化修饰,这时如果逐张幻灯片去插入背景或复制粘贴图片,会很麻烦,而且图片也很容易被误操作修改,其实有更快捷且不易被修改的 ...
最新文章
- 【Linux】Linux computer文件夹下各种文件的作用
- AI的双刃剑:拍照搜题与协助作弊
- openfire单个插件编译
- spring3.0注解
- pytorch历史版本下载:
- .NET Framework 3.5 SP1 bootstrapper 包(安装和部署)的解决方法
- 既然有 GC 机制,为什么还会有内存泄露的情况
- Drawable 添加过滤色,改变图片颜色
- JVM调优之jstack找出发生死锁的线程
- BZOJ4426 : [Nwerc2015]Better Productivity最大生产率
- 手把手教你做酷炫的数据可视化大屏,零基础的你仅需6步
- 黑客松Demo: Kata 的下一代镜像系统
- IVF和VS安装——配置Fortran环境
- 犀牛Rhino中Grasshopper插件中的millipede千足虫插件安装方法
- 架构之美-读书笔记之二
- Linux使用strlen编译,strlen in NASM Linux
- [Python]网络爬虫学习笔记,爬取豆瓣妹子上妹子的照片
- 来自雨林木风的Linux发行版: Ylmf Linux
- JAVA面试常考系列七
- 3.21 refused bequest