2016-10-12 3 views
0

У меня есть изображение, названное graph.jpg в папке с возможностью рисования, и я хочу заполнить его определенным изображением каждый раз, когда я загружаю его с сервера. Для этого я использовал Дооснащение, и у меня уже есть следующий интерфейс:Как вы можете изменить содержимое графического файла в Android?

@GET("/androidimage/") 
    Call<ResponseBody> getImage(
      @Query("image") String command 
    ); 

И следующий метод в деятельности:

private void getImage(WebService webService, String command){ 
     Call<ResponseBody> call = webService.getImage(command); 
     call.enqueue(new Callback<ResponseBody>() { 

      @Override 
      public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) { 
       if (response.isSuccessful()){ 
        if (response.body() != null){ 
         Bitmap bm = BitmapFactory.decodeStream(response.body().byteStream()); 
         imageViewTouch.setImageBitmap(bm); 
        } 
        else { 
         imageViewTouch.setImageResource(R.drawable.graph); 
        } 
       } 
      } 

      @Override 
      public void onFailure(Call<ResponseBody> call, Throwable t) { 
       System.out.println("LOG Error: " + t.getMessage()); 
      } 
     }); 
    } 

Я хочу, чтобы мой файл graph.jpg быть изменен на наиболее недавний bm, преобразованный в JPG. Как это может быть сделано?

Благодаря ответу @Alex Klimashevsky, я смог сделать это с помощью библиотеки Picasso, и это намного проще.

+0

Вам необходимо сохранить его в другом месте в файловой системе. Ресурсы для Android доступны только для чтения. – Henry

ответ

0

Используйте Picasso библиотеку для этого.

Эта библиотека имеет механизм кеширования из коробки.

Также вы не можете заменить изображения из папки /drawable.

+0

Хорошо, спасибо, я попробую это. –