从网络加载&裁剪图像

时间:2015-02-20 02:31:05

标签: java android bitmap

尝试从网站加载图片并将该特定图片的中心裁剪成圆圈。我目前正在尝试使用以下代码。代码有两个问题...一个是我不能在main方法中使用net函数。还有两个我正确裁剪它?

private Drawable getAvatar(String link) {
    RoundedBitmapDrawable drw = null;
    try {
        URL url = new URL(link);
        Bitmap bmp = BitmapFactory.decodeStream(url.openConnection().getInputStream());
        drw = RoundedBitmapDrawableFactory.create(Resources.getSystem(), bmp);
        drw.setCornerRadius(Math.max(bmp.getWidth(), bmp.getHeight()) / 2.0f);
    } catch (MalformedURLException e) {
        e.printStackTrace();
    } catch (IOException e1) {
        e1.printStackTrace();
    }
    return drw;
} 

我认为我的选择是要么创建一个新的类作为一个线程并加载所有图像......我需要将这些图像更新到另一个活动中。

AsyncTask导致跳帧,我需要一个真正的线程,但仍然需要更新UI

1 个答案:

答案 0 :(得分:0)

尝试使用async task在后台执行您不应该在主线程上执行的过程。

要裁剪图像,您可以执行this。此示例以圆形方式裁剪任何图像。