如何将原始数据转换为位图?

时间:2016-08-24 10:51:35

标签: android bitmap android-bitmap

 URL imageUrl = new URL("http://192.168.0.103:8080/mm/showImage?id=2&fileName=fesc1cc.JPG&imgType=books" );

        //URL imageUrl = new URL(url);
        HttpURLConnection conn = (HttpURLConnection) imageUrl
                .openConnection();

        BufferedReader in = new BufferedReader(
                new InputStreamReader(conn.getInputStream()));
        StringBuffer buffer = new StringBuffer();
        String inputLine;
        while ((inputLine = in.readLine()) != null)
            buffer.append(inputLine);
        in.close();     


        conn.getResponseCode();
        System.out.println(conn.getResponseCode());
        System.out.println(buffer.toString());
        conn.disconnect();

如何将我收到的数据转换为Bitmap并将其显示在图像视图中。

4 个答案:

答案 0 :(得分:2)

byte[] imageAsBytes = Base64.decode(myImageData.getBytes());
Bitmap bp = BitmapFactory.decodeByteArray(imageAsBytes, 0, imageAsBytes.length);

byte []bt = buffer.toString().getBytes();
Bitmap i = BitmapFactory.decodeByteArray(buffer.getBytest or buffer.tobytes, 0,bt.length);

答案 1 :(得分:0)

您可以使用毕加索库来执行此操作Picasso.with(context).load(imageUrl).into(imageview);

答案 2 :(得分:0)

改用Picasso库。毕加索很容易使用。 Picasso.with(context).load("url").into(ImageView)。 更多信息在这里 http://square.github.io/picasso

答案 3 :(得分:-1)

更有效的方法是使用Glide。 Glide是一款快速高效的Android开源媒体管理和图像加载框架,它将媒体解码,内存和磁盘缓存以及资源池包装成简单易用的界面。

库的用法:

  • 将以下代码添加到您的gradle文件(Module:app)

    repositories {
        mavenCentral() 
    }
    
    dependencies {
        ...
        compile 'com.github.bumptech.glide:glide:3.7.0'
    }
    
  • 使用滑行将您的网址图片加载到imageview

    Glide.with(this).load(imageUrl).into(imageView);
    

有关详细信息,请访问https://github.com/bumptech/glide

祝你好运。

修改

Glide.with(this)
.load("http://192.168.0.103:8080/mm/showImage?id=2&fileName=fesc1cc.JPG&imgType=books")
.into(imageView);