안드로이드에서 Kotlin 이미지 로드 라이브러리

6727 단어
이 글을 읽고 있다면 코드 편집기로 돌아가야 한다는 것을 의미할 수도 있습니다.최근에 이미지 로딩 라이브러리 Coil을 발견했는데 이를 탐색하고 발견한 내용을 공유할 수 있을 것 같습니다.
코일:뭐예요?
그들의 문서에 따르면, Coil은 컴퓨팅 이미지 로더를 대표하며, Kotlin 컴퓨팅이 지원하는 이미지 로더 라이브러리입니다.Kotlin 프로토콜에 익숙하지 않다면 걱정하지 마십시오. 이것은 경량급 라인일 뿐입니다.이 라이브러리를 사용해도 협업 프로그램에 대한 지식이 필요하지 않기 때문에 저는 Kotlin 협업 프로그램의 복잡한 세부 사항을 깊이 연구하지 않을 것입니다.
그런데 정말 다른 이미지 로딩 라이브러리가 필요합니까?
Glide와 Picasso 또는 Universal Image Loader가 가득한 세계에 우리가 정말 다른 이미지 로드 라이브러리가 필요한지 궁금하실 수도 있습니다. 안드로이드 플랫폼에서 한동안 개발된 사람들에게는.그러나 코일에 관해서는 두 가지가 나의 주의를 끌었다.
  • 내가 선택한 이미지 로드 라이브러리 Glide보다 크기가 더 작습니다.그리고
  • 놀랍게도 사용하기 쉽다.이 라이브러리는 Kotlin이 해결해야 할 문제이며, 또한 아주 훌륭하다는 것을 본문의 하반부에서 보실 수 있습니다.

  • 좋아, 내가 설득당했어. 다음은?
    프로젝트에서 Coil을 사용하려면 프로젝트에 AndroidX가 이미 사용되도록 해야 합니다.또한 SDK 레벨 29를 사용하여 컴파일하고 Java 8을 사용해야 합니다.
    위의 각 조건이 충족되면 라이브러리를 사용하려면 build.gradle 파일의 응용 프로그램 수준 의존 항목에 다음 줄을 추가해야 합니다.
    implementation("io.coil-kt:coil:0.9.1")
    

    기본값이 있는 기본 가공소재Coil가 포함됩니다.이렇게 하면 안드로이드 프로그램에서 더욱 쉽고 빠르게 이미지 로드를 시작할 수 있습니다.
    이미지 로드
    이미지를 ImageView에 로드하려면 Coil은 load()라는 멋진 확장 기능을 제공합니다.
    다음은 사용 중인 라이브러리의 코드 세그먼트입니다.
    //Loading from a URL
    imageView.load("https://via.placeholder.com/600/92c952")
    
    //Loading from an image drawable
    imageView.load(R.drawable.some_image_placeholder)
    
    // Loading from a file
    imageView.load(File("/path/to/some_image_placeholder.png"))
    

    정말 간단해.너는 이 물건을 엮을 수 없다!
    백그라운드에서 이 load() 기능은 많은 일을 완성할 수 있다.URL에서 로드하는 경우:
  • 코일은 RequestDisposable 대상을 만들고 이 대상은 기본적으로 네트워크에 연결하는 대상이다.
  • URL에 지정된 그림을 네트워크를 통해 요청하고 결과를 에 로드합니다target.
  • 이런 상황에서 실례ImageView는 예상target(이로 인해 확장 기능을 가진 아름다움)이다.

  • 더 많은 것을 찾아보자..
    이 점에서, 이 라이브러리에서 자리 표시자를 설정하거나, 그림을 원형으로 재단하는 등 어떤 작업을 수행하는지 알고 싶을 수도 있습니다.
    좋아, 이거 정말 쉬워.load() 기능을 확장한 후에 마지막 lambda에 설정을 추가하면 됩니다.
    관찰:
    //Applying image loading with configurations
    imageView.load("https://via.placeholder.com/600/92c952") {
        crossfade(true)
        placeholder(R.drawable.placeholder_image)
        transformations(CircleCropTransformation())
    }
    

    간단하게!
    아직 충분하지 않은 것 같습니다. Coil 지원은 사용자 정의 대상에 불러옵니다.
    단일 예제load()의 확장 기능Coil을 사용하면 다음과 같은 이점을 얻을 수 있습니다.
    //Custom targets
    Coil.load("https://via.placeholder.com/600/92c952"){
        target{ drawable ->
            //Do something with result e.g apply a filter to greyscale image.
        }
    }
    

    On Success, On Start, On Error, On Cancel 같은 특정한 사건을 정탐할 수 있지만, 본문에서 나는 이 사건들을 상세하게 토론하지 않을 것입니다.만약 네가 나를 더욱 깊이 잠수시키고 싶다면, 너는 나에게 알려줄 수 있다.나는 도서관의 모든 측면과 관련된 선권당 기교 2부분의 글을 만들 것이다. 그러면 나는 찾을 수 있다.
    변환에 대한 자세한 정보
    Coil 라이브러리는 4가지 기존 변환을 제공합니다.
  • BlurTransformation- 응용 고스 모호.
  • CircleCropTransformation - 이미지를 잘라서 가운데에 원을 만듭니다.
  • GrayscaleTransformation - 이미지를 회색조로 음영처리합니다.
  • RoundedCornersTransformation - 대상 크기에 맞게 이미지를 자르고 이미지 각도를 둥글게 만듭니다.

  • 기타 주의해야 할 쿨한 일
    Coil 라이브러리에 대해 멋진 주의사항이 있습니다.
  • 확장에 대한 지원이 매우 광범위하여 개발자가 프로젝트에서 더 많은 파일 형식을 지원하여 그들의 수요를 만족시킬 수 있다.
  • 테스트를 더욱 쉽게 하는 기능을 가지고 있다.기본적으로, 인터페이스이기 때문에 ImageLoader 대상의 실례를 모의할 수 있습니다.
  • 주석 처리가 없습니다!이것은 매우 큰 것이다.이것은 Glide를 사용하면 프로젝트를 더욱 빨리 구축할 수 있다는 것을 의미합니다. 이것은 매우 중요하다는 것을 알고 있습니다.Kotlin의 확장 기능을 사용합니다.

  • 결론
    Coil은 매우 아름다운 안드로이드 이미지 로드 라이브러리입니다.나는 Instacart와 아무런 관계가 없지만, 나는 더욱 간결한 코드의 창도자이며, 나는 줄곧 게으르다.나는 내 생활을 더욱 가볍게 하는 모든 일을 할 것이다. 그러나 Coil은 그렇다. 적어도 그림을 불러와야 한다.
    현재 이미지 로드 라이브러리에서 이동할 수도 있습니다.
    자세한 내용을 보려면 아래에 유용한 링크가 있습니다.
  • 코일 소개: Kotlin이 처음으로 안드로이드에 그림을 불러오기
  • 코일 파일
  • Coil Github 프로젝트 - 코드 찾아보기.

  • 텍스트 링크:https://dev.to//kudziechase/taking-a-look-at-coil-an-image-loading-library-for-kotlin-on-android-1ndp

    좋은 웹페이지 즐겨찾기