0

我正在做一个复杂的 UI 设计,它就像一个圆形轮子,在圆形轨迹上包含 10 个图标。我需要根据设备分辨率缩放每个图标。请查看特定的代码片段:-

             if (displayWidth<=241) {
      bitmap = scaleBimtap(bitmap, 42, 39);
     }else if (displayWidth<=320) {
      bitmap = scaleBimtap(bitmap, 42, 39);
     }else if (displayWidth<=480) {
      bitmap = scaleBimtap(bitmap, 52, 44); 
     }else{
      bitmap = scaleBimtap(bitmap, 52, 44);
     }

HTC sense 是一款 540X960 分辨率的设备。所以这里是 bitmap = scaleBimtap(bitmap, 52, 44); 在这种情况下必须选择,但这似乎被错误地缩放并且图标显示得更大。我该怎么做才能使它起作用。

4

1 回答 1

-1

图片来自网址

imageView = new (ImageView)findViewById(R.id.myImage);

从网址获取图片

 Bitmap originalBitmap = getBitmapFromURL("http://www.chennaionline.com/home.JPG");

getBitmapFromURL 方法:

public static Bitmap getBitmapFromURL(String src) {
        try {
            URL url = new URL(src);
            HttpURLConnection connection = (HttpURLConnection) url
                    .openConnection();
            connection.setDoInput(true);
            connection.connect();
            InputStream input = connection.getInputStream();
            Bitmap myBitmap = BitmapFactory.decodeStream(input);
            return myBitmap;
        } catch (IOException e) {
            e.printStackTrace();
            return null;


}
}

设置位图

Bitmap bitmap = Bitmap.createScaledBitmap(originalBitmap, width,
                height, false);

imageView.setImageBitmap(bitmap);

资源文件中的图像

Bitmap bitmap = ((BitmapDrawable)imageView.getDrawable()).getBitmap();
于 2013-04-24T11:12:45.190 回答