The wallpaper setting example also involves some image conversion content.
Get current Wallpaper
Final wallpapermanager = wallpapermanager. getinstance (this); Final drawable wallpaperdrawable = wallpapermanager. getdrawable ();
Set the wallpaper to imageview.
Imageview. setdrawingcacheenabled (true); imageview. setimagedrawable (wallpaperdrawable );
Because the image must be processed, the catch
Imageview. setdrawingcacheenabled (true)
When you click the randomize button, a random number is generated and the color is retrieved from the predefined data.
Int mcolor = (INT) math. Floor (math. Random () * mcolors. Length );
Then, the color is overwritten on the image and only some colors are allowed to pass through.
Wallpaperdrawable. setcolorfilter (mcolors [mcolor], porterduff. mode. Multiply );
Mcolors is a data with predefined colors
Final Static private int [] mcolors = {color. blue, color. green, color. red, color. ltgray, color. magenta, color. cyan, color. yellow, color. white };
Click set wallpaper to set the new wallpaper to the system.
Wallpapermanager. setbitmap (imageview. getdrawingcache ());
The effect is as follows: