android 设置壁纸,在Android中使用WallpaperManager设置壁纸
以下是我的代码,我想使用壁纸管理器设置为壁纸.我正在使用Universal Image Loader,但我不知道如何实现壁纸管理器.我的setWall()不起作用,有点令人困惑.
import android.graphics.Bitmap;
import android.os.Bundle;
import android.os.Parcelable;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.ImageView;
import android.widget.ProgressBar;
import android.widget.Toast;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.assist.FailReason;
import com.nostra13.universalimageloader.core.assist.ImageLoadingListener;
import com.nostra13.universalimageloader.core.assist.ImageScaleType;
public class ImageActivity extends BaseActivity {
private DisplayImageOptions imageoptions;
private ViewPager imagepager;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.imagepager);
Bundle bundle = getIntent().getExtras();
String[] imageUrls = bundle.getStringArray(Extra.IMAGES);
int pagerPosition = bundle.getInt(Extra.IMAGE_POSITION, 0);
imageoptions = new DisplayImageOptions.Builder()
.showImageForEmptyUri(R.drawable.noimage)
.cacheOnDisc()
.imageScaleType(ImageScaleType.EXACT)
.build();
imagepager= (ViewPager) findViewById(R.id.imagepager);
imagepager.setAdapter(new ImagePagerAdapter(imageUrls));
imagepager.setCurrentItem(pagerPosition);
}
public void setWall() {
WallpaperManager myWallpaperManager
= WallpaperManager.getInstance(getApplicationContext());
try {
myWallpaperManager.setResource(R.drawable.app_icon); //
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main_menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.setWall:
setWall();
return true;
default:
return false;
}
}
@Override
protected void onStop() {
imageLoader.stop();
super.onStop();
}
private class ImagePagerAdapter extends PagerAdapter {
private String[] images;
private LayoutInflater inflater;
ImagePagerAdapter(String[] images) {
this.images = images;
inflater = getLayoutInflater();
}
@Override
public void destroyItem(View container, int position, Object object) {
((ViewPager) container).removeView((View) object);
}
@Override
public void finishUpdate(View container) {
}
@Override
public int getCount() {
return images.length;
}
@Override
public Object instantiateItem(View view, int position) {
final View imageLayout = inflater.inflate(R.layout.item_pager_image, null);
final ImageView imageView = (ImageView) imageLayout.findViewById(R.id.image);
final ProgressBar spinner = (ProgressBar) imageLayout.findViewById(R.id.loading);
imageLoader.displayImage(images[position], imageView, imageoptions, new ImageLoadingListener() {
public void onLoadingStarted() {
spinner.setVisibility(View.VISIBLE);
}
public void onLoadingFailed(FailReason failReason) {
String message = null;
switch (failReason) {
case IO_ERROR:
message = "Input/Output error";
break;
case OUT_OF_MEMORY:
message = "Out Of Memory error";
break;
case UNKNOWN:
message = "Unknown error";
break;
}
Toast.makeText(ImagePagerActivity.this, message, Toast.LENGTH_SHORT).show();
spinner.setVisibility(View.GONE);
imageView.setImageResource(android.R.drawable.ic_delete);
}
public void onLoadingComplete(Bitmap loadedImage) {
spinner.setVisibility(View.GONE);
Animation anim = AnimationUtils.loadAnimation(ImagePagerActivity.this, R.anim.fade_in);
imageView.setAnimation(anim);
anim.start();
}
public void onLoadingCancelled() {
// Do nothing
}
});
((ViewPager) view).addView(imageLayout, 0);
return imageLayout;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view.equals(object);
}
@Override
public void restoreState(Parcelable state, ClassLoader loader) {
}
@Override
public Parcelable saveState() {
return null;
}
@Override
public void startUpdate(View container) {
}
}
}
android 设置壁纸,在Android中使用WallpaperManager设置壁纸相关推荐
- python坐标轴刻度设置_学习python中matplotlib绘图设置坐标轴刻度、文本
总结matplotlib绘图如何设置坐标轴刻度大小和刻度. 上代码: from pylab import * from matplotlib.ticker import MultipleLocator ...
- 计算机word实线边框在哪,word边框设置在哪 WORD中的边框设置在哪里
可以在边框和底色纹对话框中进行设置. 操作步骤:1.单击页面布局选项卡上的页面边框按钮,如图所示: 2.弹出边框和底色纹对话框,在这个对话框,可以对边框进行设置,如图所示. word2010页面边框怎 ...
- 计算机上如何配置扫描设置,在 MF Toolbox 中配置扫描设置
在 MF Toolbox 中配置扫描设置 本章节说明使用 MF Toolbox 扫描时可用的各种扫描设置. 注释 双击桌面上的 [MF Toolbox] 图标时,将显示以下说明中的 [MF Toolb ...
- ad设置塞孔_PCB设计中,如何设置跳线
在pcb设计中,有时我们会遇到一些单面设计的板,也就是通常的单面板(LED类的灯板设计较多)在这类板中,只可以单面布线,所以就不得不用到跳线当然,在复杂类的板中,能够用跳线解决的问题都基本上不是问题. ...
- python 设置全局代理_Python中使用socks5设置全局代理的方法示例
0x01介绍 PySocks使您可以通过SOCKS和HTTP代理服务器发送流量.它是SocksiPy的现代分支,具有错误修复和其他功能. 0x02 安装 λ pip3 install Pysocks ...
- php网页代码字体颜色设置,html和css中字体颜色设置的相关总结
网页中颜色的运用是网页必不可少的一个元素.使用颜色目的在于有区别.有动感.美观之用,同时颜色也是各种各样网页的样式表现元素之一,所以在我们的日常开发中不管是前端还是后端都离开不字体颜色,那么我们今天就 ...
- java内存设置最大内存_JVM中内存的设置和分配(最大内存,总内存,剩余内存的区别)...
1.设置分配的内存大小 -vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M -vmargs 说明后面是VM的参数,所以后面的 ...
- oracle设置标识列,Oracle中为表设置自动增长的标识列
-- 创建序列 create sequence 序列名称 start with 1 -- 起始值 increment by 1 -- 增量 maxvalue 99999999 -- 最大值 nocyc ...
- android 恢复出厂,安卓(Android)手机恢复出厂设置的方法
手机恢复出厂设置是把手机中的个性设置或者说自定义的设置恢复刚买手机时的一些东西,下面我来介绍两种恢复出厂设置的方法,希望本文章对各位同学会有所帮助. 手机恢复出厂设置会怎么样? 手机恢复出厂设置.只会 ...
最新文章
- php session already send by ……
- 不同表主键能相等吗_视频 |【搞机实验室】测血氧有啥,你见过能“开车”的表吗?...
- Java面试技巧之MySQL问题梳理
- 洛谷 - P1308 统计单词数(字符串+模拟)
- Magento 1.9.X 系列教程
- 蓝桥杯 ADV-234 算法提高 字符串跳步
- [原]MS SQL表字段自增相关的脚本
- 英文信的开头和结尾的客套话有哪些?
- 计算机键盘使用大写用什么键,操作方法:如何解决Win10系统键盘的大小写切换键(大写锁定)的问题?...
- 人脸识别(81关键点)经典开源核心代码
- 手机计算机藏应用,把隐私藏进计算器!这款功能强大的隐私保护软件,层层防护,怒赞...
- HTML如何使用隐藏图片,css3如何隐藏图片?
- oracle order by 排序之降序 null 排最后
- Chapter 9 Physically Based Shading
- 元末明初为什么会爆发农民起义
- 梦想实现_实现梦想的软件工程工作需要什么
- HTML期末作业 蛋糕bootstrap响应式网站html+css+javascript+jquery+bootstarp
- 电视机计算机英语,电视电脑的优缺点英语作文
- 在k8s上安装Jenkins及常见问题
- ng-select多选时输入中文时光标靠左
热门文章
- 腾讯云学生服务器官网地址(附用途指南)
- 爬虫进阶-如何进行app爬取
- 《产品游戏化》电子书下载(epub+mobi+pdf) Netflix、迪士尼、微软巨头在使用的产品策略
- 量子计算机qubit态,成功了!三维量子态传送被我国专家突破,量子计算机时代快来了...
- mysql 按日期分组求和
- GNN-图卷积模型-2016:PATCHY-SAN【图结构序列化:将图结构转换成了序列结构,然后直接利用卷积神经网络在转化成的序列结构上做卷积】
- 第7章 集成方法、随机森林
- eclipes下载与配置中文(超详细2021年最新版)
- 最主流的五个大数据处理框架的优势对比
- PC端支付——微信支付与支付宝支付