2016-08-10 92 views
0

我想将图像资源添加到不会用于图标的Android应用程序。我想知道在支持多种设备屏幕尺寸的同时做什么是正确的方式。我能想到的唯一解决方案是将图像调整为不同的像素(宽度,高度)组合,并将它们存储在适当的可绘制文件夹中。 对于图标图像,我使用Android工作室图像资产工具自动生成不同大小的图标。我想要那些不是图标的图像(不会放在工具栏和类似的地方)。生成非图标图像

解决方案,为我

用于Android Asset Studio, Generic Icon Generator 来生成不同的设备分辨率的图像资源的工作。

回答

0

我想你可以试试这个:

  1. 创建文件夹drawable-nodpi,把你的图片里面。
  2. 使用此代码查找装置的宽度:

public static int getWidth() { 
    int width = 400; 
    try { 
     WindowManager wm = (WindowManager) DataBackApplication.getInstance().getApplicationContext() 
       .getSystemService(Context.WINDOW_SERVICE); 
     Display display = wm.getDefaultDisplay(); 
     if (Build.VERSION.SDK_INT > 12) { 
      Point size = new Point(); 
      display.getSize(size); 
      width = size.x; 
     } else { 
      width = display.getWidth(); // Deprecated 
     } 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
    return width; 
} 
  • 构建布局。使用此代码
  • 加载图像:

  • int width = getWidth(); 
    int imgWidth = width/6; 
    int imgHeight = width/9; 
    Glide.with(PermissionActivity.this) 
         .load(R.drawable.privacy_mobile_img) 
         .override(imgWidth, imgHeight) 
         .into(imgUserPerm); 
    

    使用滑翔加载图像,因为它会调整它小型,中型,或任何大小的设备。我以width/6为例,您可以根据需要进行调整。