2015-01-23 4 views
1

내 응용 프로그램에 유니버설 이미지 로더 라이브러리를 사용하고 있습니다. 내가 이상한 문제가 발생하는 경우가 있는데, 일부 Android 휴대 전화에서는 이미지를 첨부 한 것처럼 반 이미지 만로드합니다.유니버설 이미지 로더 절반 이미지 또는 부분 이미지 로딩

public static void initImageLoader(Context context) { 

     // This configuration tuning is custom. You can tune every option, you 
     // may tune some of them, 
     // or you can create default configuration by 
     // ImageLoaderConfiguration.createDefault(this); 
     // method. 
     ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(
       context) 
       .threadPriority(Thread.NORM_PRIORITY - 1) 
       .threadPoolSize(3) 
       // default 
       // .denyCacheImageMultipleSizesInMemory() 
       .discCache(

         new FileCountLimitedDiscCache(new File(
           Constant.EXTERNAL_STORAGE_PATH_FOR_LAZY), 100)) 
       .denyCacheImageMultipleSizesInMemory() 
       .memoryCache(new UsingFreqLimitedMemoryCache(2 * 1024 * 1024)) 
       // discCache(new TotalSizeLimitedDiscCache(new 
       // File(Constant.EXTERNAL_STORAGE_PATH_LAZY), 10)) 
       .discCacheFileNameGenerator(new HashCodeFileNameGenerator()) 
       .tasksProcessingOrder(QueueProcessingType.FIFO) 
       .discCacheFileCount(100) 
       // .discCacheSize(1 * 512 * 1024) 
       .build(); 
     ImageLoader.getInstance().init(config); 
    } 

} 

enter image description here

+0

덜 구체적인 설정을 사용하면 어떻게됩니까? (캐시 크기를 설정 한 모든 재정의를 제거한 다음 초기화하십시오). 이미지가 손상되지 않았 음을 확신합니까? 체크 할 또 다른 것은'exif' 매개 변수를 존중하는지 여부입니다. considerExif (또는 이와 비슷한)를 설정하여 도움이되는지 확인하십시오. – kha

+0

덜 구체적인 설정을 사용하면 결과도 동일합니다. –

+0

이미지보기가 포함 된 레이아웃 xml을 붙여 넣을 수 있습니까? 이미지 로더에 문제가 있거나 없을 수 있습니다. 또한 SD 카드 위치에 이미지를 저장하고 (UIL을 통해 이미지를로드하기 전에) 갤러리에서 이미지 자체가 손상되지 않았는지 확인하십시오. – kha

답변

0

당신이 시도 할 수 있습니다 : compile 'com.koushikdutta.ion:ion:2.+'

  • 처럼 어댑터 또는 이미지 뷰 수정 :
    1. 이 의존성을 컴파일 여기

      내 구성입니다 ,

      example

      는 희망이 도움을 바탕으로

      Ion.with(imageView) 
      .placeholder(R.drawable.placeholder_image) 
      .error(R.drawable.error_image) 
      .animateLoad(spinAnimation) 
      .animateIn(fadeInAnimation) 
      .load("http://example.com/image.png"); 
      

      !

    0

    Glide을 사용하십시오. 나는 이것을 UIL 대신에 사용하고 당신에게 추천한다.

    0

    이미지를 다운로드하는 동안 리스너를 사용하면 청취자에서 onLoadingComplete()으로 작업 할 수 있습니다. 이 코드는 이미지가 완전히 다운로드 될 때를 식별하는 데 도움이 될 것입니다

    imageLoader.loadImage(url, new SimpleImageLoadingListener(){ 
    
           @Override 
           public void onLoadingComplete(String imageUri, View view, 
             Bitmap loadedImage) { 
           super.onLoadingComplete(imageUri, view, loadedImage); 
    
            //write your code here to use loadedImage 
           } 
    
          }); 
    

    : 여기

    이의 샘플 코드입니다.

    관련 문제