【问题标题】:bitmap image not showing位图图像不显示
【发布时间】:2018-11-16 13:09:44
【问题描述】:

我从数据库中获取图像并尝试在图像视图中显示但没有成功 - 图像未显示。这里可能有什么问题:

Bitmap bitmap = BitmapFactory.decodeFile(PHP_MYSQL_SITE_URL + "images/thumb/" + imageUrl);//("/sdcard/image.jpg");
                                            ImageView im = findViewById(R.id.imageView2);
                                            im.setImageBitmap(bitmap);

【问题讨论】:

    标签: java php android mysql


    【解决方案1】:

    对于下载和显示图像,您可以使用库Picasso

    String imageUrl = PHP_MYSQL_SITE_URL + "images/thumb/" + imageUrl;
    ImageView im = findViewById(R.id.imageView2);
    Picasso.get().load(imageUrl).into(im);
    

    或者如果你需要图片的位图:

    String imageUrl = PHP_MYSQL_SITE_URL + "images/thumb/" + imageUrl;
    ImageView im = findViewById(R.id.imageView2);
    Picasso.get().load(imageUrl).into(new Target() {
    
                        @Override
                        public void onBitmapLoaded(Bitmap bitmap, LoadedFrom arg1) {
                                im.setImageBitmap(bitmap);
                        }
    
                        @Override
                        public void onBitmapFailed() {
    
                        }
                    });
    

    【讨论】:

    • 但我还需要将图像保存在变量中并将其作为位图发送到下一个活动,但它不起作用
    • @noob 如果您需要保存图像,您还需要使用 Picasso Target。检查我的答案,我添加了毕加索目标的示例
    • 可以使用 Glide 代替 Picasso,因为它具有开箱即用的离线缓存。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多