mirror of
https://github.com/skydoves/android-developer-roadmap.git
synced 2024-12-25 00:00:04 +03:00
Use ZoomableAsyncImage for zoomable subsampling
This commit is contained in:
parent
af632c4529
commit
960f7e876b
|
@ -51,5 +51,5 @@ dependencies {
|
||||||
implementation "com.github.skydoves:landscapist-coil:$landscapist_version"
|
implementation "com.github.skydoves:landscapist-coil:$landscapist_version"
|
||||||
implementation "com.github.skydoves:landscapist-placeholder:$landscapist_version"
|
implementation "com.github.skydoves:landscapist-placeholder:$landscapist_version"
|
||||||
|
|
||||||
implementation "me.saket.telephoto:zoomable:0.6.2"
|
implementation "me.saket.telephoto:zoomable-image-coil:0.8.0"
|
||||||
}
|
}
|
||||||
|
|
|
@ -24,16 +24,9 @@ import androidx.compose.material.MaterialTheme
|
||||||
import androidx.compose.material.Surface
|
import androidx.compose.material.Surface
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.ui.Modifier
|
import androidx.compose.ui.Modifier
|
||||||
import androidx.compose.ui.layout.ContentScale
|
|
||||||
import androidx.compose.ui.tooling.preview.Preview
|
import androidx.compose.ui.tooling.preview.Preview
|
||||||
import com.skydoves.landscapist.ImageOptions
|
|
||||||
import com.skydoves.landscapist.coil.CoilImage
|
|
||||||
import com.skydoves.landscapist.components.rememberImageComponent
|
|
||||||
import com.skydoves.landscapist.placeholder.shimmer.ShimmerPlugin
|
|
||||||
import io.getstream.androiddeveloperroadmap.ui.theme.AndroidDeveloperRoadmapTheme
|
import io.getstream.androiddeveloperroadmap.ui.theme.AndroidDeveloperRoadmapTheme
|
||||||
import io.getstream.androiddeveloperroadmap.ui.theme.shimmerHighLight
|
import me.saket.telephoto.zoomable.coil.ZoomableAsyncImage
|
||||||
import me.saket.telephoto.zoomable.rememberZoomableState
|
|
||||||
import me.saket.telephoto.zoomable.zoomable
|
|
||||||
|
|
||||||
class MainActivity : ComponentActivity() {
|
class MainActivity : ComponentActivity() {
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
|
@ -53,20 +46,10 @@ class MainActivity : ComponentActivity() {
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
private fun AndroidRoadmap() {
|
private fun AndroidRoadmap() {
|
||||||
val background = MaterialTheme.colors.background
|
ZoomableAsyncImage(
|
||||||
CoilImage(
|
modifier = Modifier.fillMaxSize(),
|
||||||
modifier = Modifier
|
model = "https://user-images.githubusercontent.com/24237865/144350753-5a52e6e5-3517-476c-8e5c-adad919abe8e.png",
|
||||||
.fillMaxSize()
|
contentDescription = null
|
||||||
.zoomable(rememberZoomableState()),
|
|
||||||
imageModel = { "https://user-images.githubusercontent.com/24237865/144350753-5a52e6e5-3517-476c-8e5c-adad919abe8e.png" },
|
|
||||||
component = rememberImageComponent {
|
|
||||||
// shows a shimmering effect when loading an image.
|
|
||||||
+ShimmerPlugin(
|
|
||||||
baseColor = background,
|
|
||||||
highlightColor = shimmerHighLight
|
|
||||||
)
|
|
||||||
},
|
|
||||||
imageOptions = ImageOptions(contentScale = ContentScale.Fit)
|
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,16 +1,15 @@
|
||||||
buildscript {
|
buildscript {
|
||||||
ext {
|
ext {
|
||||||
compose_version = '1.5.2'
|
compose_version = '1.6.1'
|
||||||
compose_compiler_version = '1.5.3'
|
compose_compiler_version = '1.5.9'
|
||||||
compose_activity_version = '1.7.2'
|
compose_activity_version = '1.7.2'
|
||||||
landscapist_version = '2.2.10'
|
landscapist_version = '2.3.1'
|
||||||
zoomable_version = '1.5.1'
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
plugins {
|
plugins {
|
||||||
id 'com.android.application' version '8.1.2' apply false
|
id 'com.android.application' version '8.1.2' apply false
|
||||||
id 'org.jetbrains.kotlin.android' version '1.9.10' apply false
|
id 'org.jetbrains.kotlin.android' version '1.9.22' apply false
|
||||||
id "com.diffplug.spotless" version "6.7.0" apply false
|
id "com.diffplug.spotless" version "6.7.0" apply false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue