如何通过WallpaperManager(壁纸管理器)设置与修改壁纸?
WallpaperManager(壁纸管理器),是手机壁纸相关的一个API的相关类。其设置壁纸常有如下三种方法可调用:
- setBitmap(Bitmap bitmap):将壁纸设置为bitmap所代表的位图
- setResource(int resid):将壁纸设置为resid资源所代表的图片
- setStream(InputStream data):将壁纸设置为data数据所代表的图片
这是其余设置不强相关的方法:
- clear():清除壁纸,设置回系统默认的壁纸
- getDesiredMinimumHeight():最小壁纸高度
- getDesiredMinimumWidth():最小壁纸宽度
- getDrawable():获得当前系统壁纸,如果没有设置壁纸,则返回系统默认壁纸
- getWallpaperInfo():加入当前壁纸是动态壁纸,返回动态壁纸信息
- peekDrawable():获得当前系统壁纸,如果没设置壁纸的话返回null
在设置壁纸前,要在文件中设置权限:
<uses-permission android:name="android.permission.SET_WALLPAPER"/>
设置壁纸主要是以下几个步骤:
1、获得WallpaperManager对象
主要常用的是以下二种调用办法:
(1)WallpaperManager wpManager =WallpaperManager.getInstance(this);
(2)WallpaperManager wpm = (WallpaperManager) getActivity().getSystemService(Context.WALLPAPER_SERVICE);
2、调用系统自带的壁纸选择功能
Intent chooseIntnet = new Intent(Intent.ACTION_SET_WALLPAPER);
Intent chooser = Intent.createChooser(chooseIntent, getText(R.string.chooser_wallpaper));
startActivity(chooser);
3.将Activity的背景设置为壁纸背景
一种是在Activity中用代码进行设置:
setTheme(android.R.style.Theme_Wallpaper_NoTitleBar_Fullscreen)
另一种是在AndroidManifest.xml中修改Activity的主题:
<activity android:name=".MainActivity"
android:theme="@android:style/Theme.Wallpaper.NoTitleBar"/>
如何通过WallpaperManager(壁纸管理器)设置与修改壁纸?的更多相关文章
- JAVA学习Swing章节流布局管理器简单学习
package com.swing; import java.awt.Container; import java.awt.FlowLayout; import javax.swing.JButton ...
- Java基础之创建窗口——使用SpringLayout管理器(TrySpringLayout)
控制台程序. 可以把JFrame对象aWindow的内容面板的布局管理器设置为javax.swing.SpringLayout管理器. SpringLayout类定义的布局管理器根据javax.swi ...
- 第13章 Swing程序组件----常用布局管理器
在Swing中,每个组件在容器中都有一个具体的位置和大小,而在容器中摆放各种组件时很难判断其具体位置和大小.布局管理器提供了Swing组件安排.展示在容器中的方法及基本的布局功能. Swing提供的常 ...
- tkinter之grid布局管理器详解
在很久之前,我发过一篇<tkinter模块常用参数>,里面已经几乎涵盖了tkinter的大部分教程. 好吧,其实也就是上一篇而已啦. 所谓布局,就是指控制窗体容器中各个控件(组件)的位置关 ...
- 配置weblogic nodemanager管理器
[内容提示]:看了一场皇族对阵OMG的比赛,失落 .皇族又输了.. 可爱的UZI... 我承认我是逗比,看了3天节点管理器才明白点东西 .笨笨 .. 废话不多说,上图!所有的故意围绕一张图开始了 ...
- [转]SQL Server 2008 如何配置报表管理器
本文转自:https://docs.microsoft.com/zh-cn/previous-versions/sql/sql-server-2008/cc281384%28v%3dsql.100%2 ...
- 【java】浅析java组件中的布局管理器
这篇博文笔者介绍一下java组件中,常用的布局管理器.java组件中的布局方式有好几十种,所有的这些布局管理器都实现了java.awt.LayoutManager接口.接下来笔者介绍一下常用的5种布局 ...
- Qt 学习之路 2(11):布局管理器
Home / Qt 学习之路 2 / Qt 学习之路 2(11):布局管理器 Qt 学习之路 2(11):布局管理器 豆子 2012年9月4日 Qt 学习之路 2 70条评论 所谓 GUI 界 ...
- 解决“程序包管理器控制台”输入命令找不到Nuget包问题
问题: 问题原因: Nuget源的地址上不去 解决办法: 1.将Nuget源更新为可以国内使用的官方Nuget源. 1)打开VS2013:工具-->Nuget程序包管理器-->程序包管理器 ...
随机推荐
- web前端习总结--JavaScript
JavaScript 什么是JavaScript JavaScript是嵌入HTML中在浏览器中的脚本语言,有与Java和C语言类似的语法 一种网页编程技术,用来向HTML页面添加交互行为 直接嵌入H ...
- chrome本地测试cookie时无效的原因
https://blog.csdn.net/lyj787505955/article/details/38079079 应该是chrome的原因, 同一网页放在tomcat后,通过localhost方 ...
- 《零压力学Python》 之 第一章知识点归纳
第一章(初识Python)知识点归纳 Python是从ABC语言衍生而来的 ABC语言是Guido参与设计的一种教学语言,为非专业编程人员所开发的. Python是荷兰程序员 Guido Van Ro ...
- STM32窗口看门狗和独立看门狗的区别,看门狗介绍及代码演示
一.介绍: STM32看门狗分为独立看门狗和窗口看门狗两种,其两者使用调条件如下所示, IWDG和WWDG两者特点如下图所示: 独立看门狗的手册资料: 窗口看门狗的手册资料: ...
- HTML5 重力感应效果,实现摇一摇效果
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- bupt summer training for 16 #1 ——简单题目
D.What a Mess 给n个数,求其中能满足 a[i] % a[j] == 0 的数对之和 n = 1W,max_ai = 100W 不是很大,所以就直接筛就可以了 计算可得最高复杂度 < ...
- [bzoj2226][Spoj5971]LCMSum_欧拉函数_线性筛
LCMSum bzoj-2226 Spoj-5971 题目大意:求$\sum\limits_{i=1}^nlcm(i,n)$ 注释:$1\le n\le 10^6$,$1\le cases \le 3 ...
- POJ 3278 Catch That Cow(求助大佬)
Catch That Cow Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 109702 Accepted: 34255 ...
- Spring MVC-处理程序映射(Handler Mapping)-控制器类名称处理程序映射(Controller Class Name Handler Mapping)示例(转载实践)
以下内容翻译自:https://www.tutorialspoint.com/springmvc/springmvc_controllerclassnamehandlermapping.htm 说明: ...
- LINUX 内核内存管理
https://linux-mm.org/ http://www.cnblogs.com/liloke/archive/2011/11/20/2255737.html