前几天看到豌豆荚上面风景壁纸的APP 下载得挺火,闲来无事心痒痒的想写一个壁纸程序。由于是Android开发新手,忘记了一个很重要的开发步骤,就是对权限的设置。开始以为自己写的壁纸设置程序有问题,经过对doc文档的多次阅读,写好几种对壁纸的设置。供大家参考。

1、别忘记在ApplicationManifest.xml 中加上权限的设置。

<uses-permission android:name = "android.permission.SET_WALLPAPER"/>

2、设置壁纸的方法总结。

壁纸设置方法有三种

第一 通过WallpaperManager方法中的 setBitmap()

第二 通过WallpaperManager方法中的 setResource()

第三 通过ContextWrapper 类中提供的setWallpaper()方法

由于 Activity 继承ContextThemeWrapper ,ContextThemeWrapper继承 ContextWrapper.

1)通过实例化WallpaperManager 类调用单例类中setBitmap()方法。

Java代码  
  1. WallpaperManager wallpaperManager = WallpaperManager.getInstance(this);
  2. Resources res = getResources();
  3. Bitmap bitmap=BitmapFactory.decodeResource(res, getResources().getIdentifier("wallpaper" + imagePosition, "drawable", "com.ch"));
  4. wallpaperManager.setBitmap(bitmap);
  5. Toast.makeText(this, "设置成功", Toast.LENGTH_SHORT).show();

2)第二 通过WallpaperManager方法中的 setResource()

Java代码  
  1. WallpaperManager wallpaperManager = WallpaperManager.getInstance(this);
  2. try {
  3. wallpaperManager.setResource(getResources().getIdentifier("wallpaper" + imagePosition, "drawable", "com.ch"));
  4. Toast.makeText(this, "设置成功", Toast.LENGTH_SHORT).show();
  5. } catch (IOException e) {
  6. e.printStackTrace();
  7. }

3)第三 通过ContextWrapper 类中提供的setWallpaper()方法

Java代码  
  1. //重写ContextWrapper中setWallpaper()方法
  2. public void setWallpaper(InputStream paramInputStream) throws IOException {
  3. super.setWallpaper(paramInputStream);
  4. Toast.makeText(this, "设置成功", 1).show();
  5. }
  6. //设置壁纸代码
  7. Resources localResources = getBaseContext().getResources();
  8. InputStream localInputStream2 = localResources
  9. .openRawResource(getResources().getIdentifier(
  10. "wallpaper" + imagePosition, "drawable", "com.ch"));
  11. try {
  12. setWallpaper(localInputStream2);
  13. } catch (IOException e) {
  14. e.printStackTrace();
  15. }
总结:
设置壁纸功能很简单,可以当成我们第一个app应用练手。其中可以加入ImageSwitcher 和gallery等控件。
真正完成一个可以发布的App应用

转载于:https://www.cnblogs.com/sfshine/archive/2012/12/06/2807952.html

Android 壁纸设置代码 详解相关推荐

  1. android微信支付代码,详解android微信支付实例代码

    这篇文章主要为大家详细介绍了http://www.php.cn/wiki/1502.html" target="_blank">android微信支付源码,具有一定 ...

  2. php怎么自定义设置打印区域,JavaScript_jQuery实现区域打印功能代码详解,使用CSS控制打印样式,需要设 - phpStudy...

    jQuery实现区域打印功能代码详解 使用CSS控制打印样式,需要设置样式media="print",并且将页面中不需要打印的元素的样式display属性设置为none.如DEMO ...

  3. Android build.gradle文件详解(转述自《Android第一行代码》第二版)

    Android build.gradle文件详解 1. 最外层目录下的build.gradle文件 1.1 repostories 1.2 dependencies 2. app目录下的build.g ...

  4. Android实战:CoolWeather酷欧天气(加强版数据接口)代码详解(上)

    -----------------------------------该文章代码已停更,可参考浩比天气(更新于2019/6/25)----------------------------------- ...

  5. android收藏功能demo,Android使用Realm数据库实现App中的收藏功能(代码详解)

    前 言 App数据持久化功能是每个App必不可少的功能,而Android最常用的数据持久化方式主要有以下的五种方式: 使用SharedPreferences存储数据: 文件存储数据: SQLite数据 ...

  6. Android 图片着色 Tint 详解2—xml设置、selector

    上篇文章介绍了给drawable设置tint 以达到颜色变化效果,这篇介绍下通过xml设置tint.代码设置tint以及如何设置tint selector. 在xml中设置tint 可以利用 andr ...

  7. android生命周期_Android开发 View的生命周期结合代码详解

    咱们以TextView控件为例: /** * Created by SunshineBoy on 2020/9/23. */ public class TestTextView extends and ...

  8. android jar 包 意见反馈功能,android重点jar包详解.docx

    android重点jar包详解 深入理解View(一):从setContentView谈起 我们都知道?MVC,在Android中,这个?V?即指View,那我们今天就来探探View的究竟.在onCr ...

  9. Android应用坐标系统全面详解

    Android应用坐标系统全面详解 原文链接:CSDN@工匠若水,http://blog.csdn.net/yanbober/article/details/50419117 1. 背景 去年有很多人 ...

最新文章

  1. Matplotlib基础绘图功能 — 以折线图为例
  2. ASP.NET Core 新核心对象WebHost(一)
  3. mysql-安装报错计算机中丢失MSVCR100.dll文件丢失
  4. C++函数调用时堆栈的变化情况
  5. 命令行参数解析函数 getopt
  6. python3编程环境,使用 python3 环境开发。
  7. 20210729 线性增长条件和全局Lipschitz条件的关系
  8. workman安装以及使用
  9. 积分使用及有效期管理
  10. 在线分析图片上的字体
  11. python数据分析实战之超市零售分析
  12. Bug[2] TCP先连接一个错误IP,再次连接会出现连接不上并且报 ALREADY OPENED的提示
  13. 构造器(也称构造方法)
  14. Bayesian Convolution Neural Networks with Bernoulli Approximate Variational Inference
  15. [luogu2294] [HNOI2005]狡猾的商人
  16. VSCode安装Go环境(详细教程)
  17. android数据库升级兼容老版本吗,成功升级后Android升级数据库不更新数据库版本...
  18. 平心在线计算机维修的入门知识
  19. 高新技术企业评分项目及分值
  20. 基于图模型的HMI 设计

热门文章

  1. 公平的反义词是什么?
  2. 一说起丁克,我们普遍的认知就是,不生孩子
  3. 一切想要发财的人,你都要善于看到隐形的东西
  4. 直播电商只能卖便宜货吗?
  5. 12306外包给阿里巴巴、IBM等大企业做是否可行?
  6. sql server 群集_SQL Server群集索引概述
  7. sql还原数据库备份数据库_如何获取SQL数据库还原历史记录
  8. collector_使用Data Collector监视SQL Server性能
  9. aws s3 cli_了解AWS CLI –使用AWS CLI与AWS S3存储桶进行交互
  10. vue HTTP 请求(vue-resource)