Skip to content

Latest commit

 

History

History
126 lines (86 loc) · 4.39 KB

README-tr.md

File metadata and controls

126 lines (86 loc) · 4.39 KB

Coil

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

  • Hızlı: Coil, bellek ve disk önbellekleme, bellekteki görüntünün örnekleme yapılması, otomatik olarak isteklerin durdurulması/iptal edilmesi ve daha fazlası dahil olmak üzere bir dizi optimizasyon gerçekleştirir.
  • Hafif: Coil, APK'nıza ~2000 yöntem ekler (halihazırda OkHttp ve Coroutines kullanan uygulamalar için), bu da Picasso ile karşılaştırılabilir ve Glide ve Fresco'dan önemli ölçüde daha azdır.
  • Kullanımı Kolay: Coil'in API'si, basitlik ve minimum kod tekrarı için Kotlin'in dil özelliklerinden yararlanır.
  • Modern: Coil, öncelikle Kotlin'e dayanır ve Coroutines, OkHttp, Okio ve AndroidX Lifecycle gibi modern kütüphaneleri kullanır.

Coil, Coroutine Image Loader'ın kısaltmasıdır.

Çeviriler: 日本語, 한국어, Русский, Svenska, Türkçe, 中文

İndirme

Coil, mavenCentral() üzerinde mevcuttur.

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

Hızlı Başlangıç

ImageViews

Bir görüntüyü bir ImageView'a yüklemek için load uzantı fonksiyonunu kullanın:

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

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

// Ve daha fazlası...

İstekler, isteğe bağlı bir kapanan lambda ile yapılandırılabilir:

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

Jetpack Compose

Jetpack Compose uzantı kütüphanesini içe aktarın:

implementation("io.coil-kt:coil-compose:2.6.0")

Bir görüntü yüklemek için, AsyncImage bileşenini kullanın:

AsyncImage(
    model = "https://example.com/image.jpg",
    contentDescription = null,
)

Görüntü Yükleyiciler

imageView.load ve AsyncImage hem görüntü isteklerini yürütmek için singleton ImageLoader'ı kullanır. Singleton ImageLoader'a bir Context genişletme fonksiyonu kullanarak erişilebilir:

val imageLoader = context.imageLoader

ImageLoader'lar paylaşılabilir olarak tasarlanmıştır ve uygulamanız boyunca tek bir örnek oluşturup paylaştığınızda en verimlidir. Bununla birlikte, kendi ImageLoader örneğinizi de oluşturabilirsiniz:

val imageLoader = ImageLoader(context)

Eğer singleton ImageLoader istemiyorsanız, io.coil-kt:coil yerine io.coil-kt:coil-base bağımlılığını kullanın.

İ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://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://example.com/image.jpg")
    .build()
val drawable = imageLoader.execute(request).drawable

Coil'in tam belgelerini buradan inceleyin.

R8 / Proguard

Coil, R8 ile uyumlu olarak kutudan çıkar ve ekstra kurallar eklemeyi gerektirmez.

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

Lisans

Copyright 2023 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.