You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
1.3 KiB
38 lines
1.3 KiB
package benchmarks.animation |
|
|
|
import androidx.compose.animation.AnimatedVisibility |
|
import androidx.compose.foundation.Image |
|
import androidx.compose.foundation.layout.Column |
|
import androidx.compose.foundation.layout.fillMaxWidth |
|
import androidx.compose.material.MaterialTheme |
|
import androidx.compose.runtime.Composable |
|
import androidx.compose.runtime.LaunchedEffect |
|
import androidx.compose.runtime.getValue |
|
import androidx.compose.runtime.mutableStateOf |
|
import androidx.compose.runtime.remember |
|
import androidx.compose.runtime.setValue |
|
import androidx.compose.ui.Alignment |
|
import androidx.compose.ui.Modifier |
|
import kotlinx.coroutines.delay |
|
import org.jetbrains.compose.resources.ExperimentalResourceApi |
|
import org.jetbrains.compose.resources.painterResource |
|
|
|
@OptIn(ExperimentalResourceApi::class) |
|
@Composable |
|
fun AnimatedVisibility() { |
|
MaterialTheme { |
|
var showImage by remember { mutableStateOf(false) } |
|
LaunchedEffect(showImage) { |
|
delay(200) |
|
showImage = !showImage |
|
} |
|
Column(Modifier.fillMaxWidth(), horizontalAlignment = Alignment.CenterHorizontally) { |
|
AnimatedVisibility(showImage) { |
|
Image( |
|
painterResource("compose-multiplatform.xml"), |
|
null |
|
) |
|
} |
|
} |
|
} |
|
} |