位图图像未显示在imageview中

Anu*_*nuj 4 android image bitmap android-imageview

我创建了一个应用程序,我允许用户从图库中选择图像或从相机拍照并上传该图像到Web服务器.这个代码工作正常.现在在其他屏幕上我从Web服务器下载图像并存储在SD卡中.如果从图库中选择图像,图像正在图像视图中显示,但如果从相机捕获图像,即使文件存在于图像视图中,图像也未显示在图像视图中SD卡

用于显示图像和从服务器下载的代码

 private static class DownloadImage extends AsyncTask<String, Void, String> {

        @Override
        protected void onPreExecute() {
            super.onPreExecute();

        }

        @Override
        protected String doInBackground(String... params) {
            String filePath = downloadFile("my web service");
            return filePath;
        }

        @Override
        protected void onPostExecute(String result) {
            super.onPostExecute(result);

            if (result.equalsIgnoreCase("")) {
                ivProfilePic.setImageDrawable(context.getResources().getDrawable(R.drawable.user_default));
                progressBar.setVisibility(View.GONE);
            } else {
              profilePicPath = result;
                Bitmap bitmapProfilePic = BitmapFactory.decodeFile(profilePicPath);
                ivProfilePic.setImageBitmap(bitmapProfilePic);



                progressBar.setVisibility(View.GONE);


            }


        }


    }

    public static String downloadFile(String url, String dest_file_path) {
        try {
            File dest_file = new File(dest_file_path);
            URL u = new URL(url);
            URLConnection conn = u.openConnection();
            int contentLength = conn.getContentLength();
            DataInputStream stream = new DataInputStream(u.openStream());
            byte[] buffer = new byte[contentLength];
            stream.readFully(buffer);
            stream.close();
            DataOutputStream fos = new DataOutputStream(new FileOutputStream(dest_file));
            fos.write(buffer);
            fos.flush();
            fos.close();

        } catch (FileNotFoundException e) {

            return "";
        } catch (IOException e) {

            return "";
        }
        return dest_file_path;
    }
Run Code Online (Sandbox Code Playgroud)

Rav*_*ari 8

您应该在将图像显示到ImageView之前缩放图像.一旦我面临同样的问题和位图的缩放解决了我的问题.

以下代码是这样做的 -

Bitmap b = BitmapFactory.decodeByteArray(bitmapProfilePic , 0, bitmapProfilePic .length)
ivProfilePic.setImageBitmap(Bitmap.createScaledBitmap(b, 120, 120, false));
Run Code Online (Sandbox Code Playgroud)

希望这能解决你的问题

祝一切顺利.