zoukankan      html  css  js  c++  java
  • android 设置桌面背景图片适应屏幕大小

    今天做demo,设置桌面每天自动更新背景,但是桌面的背景都是被系统裁剪过的图片,上网百度了一下,有个过时的方法,改进后果然有用了!

    		      Bitmap bmp=BitmapFactory.decodeResource
    		      (getResources(), bg[DailyBg]);
    		      try
    		      {
    		      //  super.setWallpaper(bmp);
    		    	  WallpaperManager instance = WallpaperManager.getInstance(ChangeBgImage.this);
    //		    	  int desiredMinimumWidth = getWindowManager().getDefaultDisplay().getHeight(); //方法已经过时
    //		    	  int desiredMinimumHeight = getWindowManager().getDefaultDisplay().getHeight();//方法已经过时
    		    	  DisplayMetrics dm = new DisplayMetrics();
    		    	  getWindowManager().getDefaultDisplay().getMetrics(dm);
    		    	  int desiredMinimumWidth = dm.widthPixels;
    		    	  int desiredMinimumHeight = dm.heightPixels;
    		    	  Log.v("ss",""+desiredMinimumWidth);
    		    	  Log.v("ss",""+desiredMinimumHeight);
    		    	  instance.suggestDesiredDimensions(desiredMinimumWidth, desiredMinimumHeight);
    		    	  instance.setBitmap(bmp);
    		    	  Toast.makeText(ChangeBgImage.this,"壁纸设置成功",Toast.LENGTH_SHORT).show();
    		      }
    		      catch (IOException e)
    		      {
    		        e.printStackTrace();
    		      }
    		    }
    

      就是在获取屏幕大小的地方老方法已经被注释了,用了新的方法获取了屏幕的大小。

    对了还要在清单文件里将权限加上,这点很重要,我找了半天才发现,suggestDesiredDimensions方法需要加权限

        <uses-permission android:name="android.permission.SET_WALLPAPER_HINTS"/>
    

      好了 ,菜鸟大功告成。

  • 相关阅读:
    不同分辨率在线查看
    HtmlAgilityPack
    CSS知识点记录
    移动端和PC端区分
    Oracle命令
    Navicat操作Oracle
    用 Maven 做项目构建
    Java 异常处理的误区和经验总结
    ExtJs4学习(三)组件查找 ComponentQuery类
    Extjs4 操作TreeStore 处理proxyAjax 获取的数据
  • 原文地址:https://www.cnblogs.com/wangjingyao/p/4451430.html
Copyright © 2011-2022 走看看