• 如何通过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"/>
    
    
     
  • 相关阅读:
    多线程(10) — Future模式
    Java的设计模式(7)— 生产者-消费者模式
    多线程(9) — 无锁
    多线程(8) — ThreadLocal
    Java的设计模式(6)— 模板模式
    多线程(7)— JDK对锁优化的努力
    多线程(6) — 提高锁性能的一些看法
    复位电路 解析
    C语言数据类型
    MSP下载方式
  • 原文地址:https://www.cnblogs.com/gszw/p/7712132.html
Copyright © 2020-2023  润新知