2016-06-14 116 views
0

我已经使用Picasa API加载图像,但问题是我不能够设定为图像滚动能够完整的图像,这里是我使用这样设置壁纸适合屏幕

public class Utils { 
    private String TAG = Utils.class.getSimpleName(); 
    private Context _context; 
    private PrefManager pref; 

    // constructor 
    public Utils(Context context) { 
     this._context = context; 
     pref = new PrefManager(_context); 
    } 

    /* 
    * getting screen width 
    */ 
    @SuppressWarnings("deprecation") 
    public int getScreenWidth() { 
     int columnWidth; 
     WindowManager wm = (WindowManager) _context 
       .getSystemService(Context.WINDOW_SERVICE); 
     Display display = wm.getDefaultDisplay(); 

     final Point point = new Point(); 
     try { 
      display.getSize(point); 
     } catch (java.lang.NoSuchMethodError ignore) { 
      // Older device 
      point.x = display.getWidth(); 
      point.y = display.getHeight(); 
     } 
     columnWidth = point.x; 
     return columnWidth; 
    } 

    public void saveImageToSDCard(Bitmap bitmap) { 
     File myDir = new File(
       Environment 
       .getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES), 
       pref.getGalleryName()); 

     myDir.mkdirs(); 
     Random generator = new Random(); 
     int n = 10000; 
     n = generator.nextInt(n); 
     String fname = "Wallpaper-" + n + ".jpg"; 
     File file = new File(myDir, fname); 
     if (file.exists()) 
      file.delete(); 
     try { 
      FileOutputStream out = new FileOutputStream(file); 
      bitmap.compress(Bitmap.CompressFormat.JPEG, 90, out); 
      out.flush(); 
      out.close(); 
      Toast.makeText(
        _context, 
        _context.getString(R.string.toast_saved).replace("#", 
          "\"" + pref.getGalleryName() + "\""), 
        Toast.LENGTH_SHORT).show(); 
      Log.d(TAG, "Wallpaper saved to: " + file.getAbsolutePath()); 

     } catch (Exception e) { 
      e.printStackTrace(); 
      Toast.makeText(_context, 
        _context.getString(R.string.toast_saved_failed), 
        Toast.LENGTH_SHORT).show(); 
     } 
    } 

    public void setAsWallpaper(Bitmap bitmap) { 
     WallpaperManager wallpaperManager = WallpaperManager.getInstance(_context); 
    try { 

     int widht=Resources.getSystem().getDisplayMetrics().widthPixels; 
     int height=Resources.getSystem().getDisplayMetrics().heightPixels; 
     wallpaperManager.suggestDesiredDimensions(widht, height); 
     wallpaperManager.setBitmap(bitmap); 
     } catch (IOException e) { 
     e.printStackTrace(); 
     }} 
} 

哪里代码我我错了............................................... .........

回答

0

是由任何启动器应用程序控制。如果你想要一个不滚动的壁纸,安装一个不滚动壁纸的启动器应用程序。 Jelly Bean之前的Android操作系统不允许您以编程方式设置动态壁纸。目前,果冻豆支持以编程方式更改动态壁纸而无需用户干预