Skip to content

README tr

Coil

Android için Kotlin Coroutines tarafından desteklenen bir görüntü yükleme kütüphanesi. Coil:

  • Hızlıdır: Coil bellek ve disk önbellekleme, bellekteki görüntüyü alt-örnekleme, biteşlemlerin tekrar kullanımı, isteklerin otomatik olarak durdurulması/iptali ve daha fazlasını içeren pek çok sayıda optimizasyon gerçekleştirir.
  • Hafiftir: Coil, APK'nıza Picasso ile benzer ve Glide ve Fresco'dan önemli ölçüde daha az sayıda, 2000 civarında metod ekler.(Halihazırda OkHttp ve Coroutines kullanan uygulamalar için)
  • Kullanımı kolaydır: Coil'in API'si basitlik ve mininum basmakalıp için Kotlin'in dil özelliklerini sonuna kadar kullanır.
  • Moderndir: Coil Kotlin-önceliklidir ve Coroutines, OkHttp, Okio ve AndroidX Lifecycles gibi modern kütüphaneleri kullanır.

Coil şunların baş harflerinden oluşur: Coroutine Image Loader.

Instacart'da ❤️ ile yapıldı. Çeviriler: Korece, Çince

Yükleme

Coil mavenCentral()'da mevcuttur.

implementation("io.coil-kt:coil:1.4.0")

Hızlı Başlangıç

Görüntüyü ImageView'e yüklemek için load uzantı fonksiyonunu kullanın:

// URL
imageView.load("https://www.example.com/image.jpg")

// Resource
imageView.load(R.drawable.image)

// File
imageView.load(File("/path/to/image.jpg"))

// Ve daha fazlası...

İstekler tercihe bağlı bir takip eden lambda ile yapılandırılabilir:

imageView.load("https://www.example.com/image.jpg") {
    crossfade(true)
    placeholder(R.drawable.image)
    transformations(CircleCropTransformation())
}

Görüntü Yükleyiciler

imageView.load bir ImageRequest'i kuyruğa eklemek için yegane ImageLoader kullanır. Yegane ImageLoader uzantı fonksiyonu kullanılarak erişilebilir:

val imageLoader = context.imageLoader

İsteğe bağlı olarak, kendi ImageLoader kopya(ları)nızı oluşturabilir ve bağımlılık enjeksiyonu ile enjekte edebilirsiniz:

val imageLoader = ImageLoader(context)

Eğer yegane ImageLoader istemiyorsanız, io.coil-kt:coil-base'e bağlı kalabilirsiniz.

İstekler

Bir görüntüyü özel bir hedefe yüklemek için, bir ImageRequest'i enqueue edin:

val request = ImageRequest.Builder(context)
    .data("https://www.example.com/image.jpg")
    .target { drawable ->
        // Sonucu işleyin.
    }
    .build()
val disposable = imageLoader.enqueue(request)

Bir görüntüyü mecburi bir şekilde yüklemek için, bir ImageRequest'i execute edin:

val request = ImageRequest.Builder(context)
    .data("https://www.example.com/image.jpg")
    .build()
val drawable = imageLoader.execute(request).drawable

Coil'in dokümantasyonunun tamamına buradan ulaşabilirsiniz.

Gereksinimler

R8 / Proguard

Coil R8 ile tamamen uyumludur ve ek kurallar eklemeyi gerektirmez.

Eğer Proguard kullanıyorsanız, Coroutines, OkHttp ve Okio için kurallar eklemeniz gerekebilir.

Lisans

Copyright 2021 Coil Contributors

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.