SUBSCRIBE NOW![avatar]()
I always learn something just by skimming it that makes me want to bookmark the issue now and dig deeper later

SUBSCRIBE NOW![avatar]()
Keep up the good work with the newsletter 💪 I really enjoy it

SUBSCRIBE NOW![avatar]()
Dispatch is a must read for Android devs today and my go-to for keeping up with all things Jetpack Compose

SUBSCRIBE NOW![avatar]()
Dispatch has been my go-to resource as it's packed with useful information while being fun at the same time

SUBSCRIBE NOW![avatar]()
The content is light, fun, and still useful. I especially appreciate the small tips that are in each issue

SUBSCRIBE NOW![avatar]()
I truly love this newsletter ❤️🔥 Spot on content and I know there's a lot of effort that goes behind it

SUBSCRIBE NOW![avatar]()
Thanks for taking the time and energy to do it so well

JetpackCompose.app's Newsletter![avatar]()
I always learn something just by skimming it that makes me want to bookmark the issue now and dig deeper later

JetpackCompose.app's Newsletter![avatar]()
Keep up the good work with the newsletter 💪 I really enjoy it

JetpackCompose.app's Newsletter![avatar]()
Dispatch is a must read for Android devs today and my go-to for keeping up with all things Jetpack Compose

JetpackCompose.app's Newsletter![avatar]()
Dispatch has been my go-to resource as it's packed with useful information while being fun at the same time

JetpackCompose.app's Newsletter![avatar]()
The content is light, fun, and still useful. I especially appreciate the small tips that are in each issue

JetpackCompose.app's Newsletter![avatar]()
I truly love this newsletter ❤️🔥 Spot on content and I know there's a lot of effort that goes behind it

JetpackCompose.app's Newsletter![avatar]()
Thanks for taking the time and energy to do it so well

Screen Rotation
Author: Scott Pierce
A simple Composable to manually rotate the screen with Jetpack Compose, without rotating the Activity.
@Composable | |
fun RotateScreen( | |
rotation: ScreenRotation, | |
modifier: Modifier = Modifier, | |
contentAlignment: Alignment = Alignment.TopStart, | |
content: @Composable () -> Unit | |
) { | |
BoxWithConstraints { | |
val width: Dp | |
val height: Dp | |
when (rotation) { | |
ScreenRotation.LEFT_90_DEGREES, ScreenRotation.RIGHT_90_DEGREES -> { | |
width = maxHeight | |
height = maxWidth | |
} | |
else -> { | |
width = maxWidth | |
height = maxHeight | |
} | |
} | |
Box( | |
modifier = modifier | |
.rotate(rotation.degrees) | |
.width(width) | |
.height(height), | |
contentAlignment = contentAlignment | |
) { | |
content() | |
} | |
} | |
} | |
enum class ScreenRotation(val degrees: Float) { | |
LEFT_90_DEGREES(-90f), RIGHT_90_DEGREES(90f), NORMAL(0f) | |
} |
Have a project you'd like to submit? Fill this form, will ya!
If you like this snippet, you might also like:
Maker OS is an all-in-one productivity system for developers
I built Maker OS to track, manage & organize my life. Now you can do it too!