Android编程之手机壁纸WallPaper设置方法示例
本文实例讲述了Android编程之手机壁纸WallPaper设置方法。分享给大家供大家参考,具体如下:
/**
*Andorid设置手机屏幕的壁纸
*
*@description:
*@authorldm
*@date2016-5-4下午3:08:56
*/
publicclassSetWallpaperActivityextendsActivity{
//WallpaperManager类:系统壁纸管理。通过它可以获得当前壁纸以及设置指定图片作为系统壁纸。
privateWallpaperManagerwallpaperManager;
//壁纸对应的Drawable
privateDrawablewallpaperDrawable;
//展示样式的ImageView
privateImageViewimageView;
//随机生成图片的颜色Button
privateButtonrandomize;
//设置壁纸
privateButtonsetWallpaper;
//暂定的一些颜色值
finalstaticprivateint[]mColors={Color.BLUE,Color.GREEN,Color.RED,
Color.LTGRAY,Color.MAGENTA,Color.CYAN,Color.YELLOW,Color.WHITE};
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.set_wallpaper);
//初始化WallpaperManager
wallpaperManager=WallpaperManager.getInstance(this);
wallpaperDrawable=wallpaperManager.getDrawable();//获得当前系统的壁纸
initViews();
initListeners();
}
privatevoidinitListeners(){
randomize.setOnClickListener(newOnClickListener(){
publicvoidonClick(Viewview){
intmColor=(int)Math.floor(Math.random()*mColors.length);
//给当前系统壁纸设置颜色
wallpaperDrawable.setColorFilter(mColors[mColor],
PorterDuff.Mode.MULTIPLY);//取两层绘制交集
imageView.setImageDrawable(wallpaperDrawable);
//imageView.invalidate();
}
});
setWallpaper.setOnClickListener(newOnClickListener(){
publicvoidonClick(Viewview){
try{
//设置壁纸
wallpaperManager.setBitmap(imageView.getDrawingCache());
finish();
}catch(IOExceptione){
e.printStackTrace();
}
}
});
}
privatevoidinitViews(){
imageView=(ImageView)findViewById(R.id.imageview);
imageView.setDrawingCacheEnabled(true);
imageView.setImageDrawable(wallpaperDrawable);
randomize=(Button)findViewById(R.id.randomize);
setWallpaper=(Button)findViewById(R.id.setwallpaper);
}
}
布局文件:
希望本文所述对大家Android程序设计有所帮助。