Compare commits

...

4 commits

Author SHA1 Message Date
Relive077 53b374862c
Merge 4596e7b5dc into 38855d4e64 2024-02-21 10:29:47 -07:00
skydoves 38855d4e64
Merge branch 'main' of https://github.com/skydoves/android-developer-roadmap 2024-02-22 00:33:49 +09:00
skydoves 960f7e876b
Use ZoomableAsyncImage for zoomable subsampling 2024-02-22 00:33:42 +09:00
Relive077 4596e7b5dc Create android_developer_roadmap.png 2021-12-04 01:50:46 +05:30
4 changed files with 10 additions and 28 deletions

View file

@ -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"
} }

View file

@ -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)
) )
} }

View file

@ -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
} }

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB