Alex Zhukovich
alexzh.com
Alex Zhukovich
@alexzh.com
1/3 Foldable devices always use the medium window size class.

I believed this too. Then I opened my app on a Pixel 9 Pro Fold and was surprised that the "foldable" layout was skipped, and the "tablet" layout appeared on the screen.

#AndroidDev #KMP #MaterialDesign
October 30, 2025 at 8:39 AM
Did you know that the OutputTransformation API lets you format text fields in Jetpack Compose in real time?

Here's how to improve entering a card number. You can also use it for phone numbers, dates, postcodes, and more.

Do you already use OutputTransformation in your project?
October 24, 2025 at 4:30 AM
“We don’t have time for visual testing.” That’s what many Android developers say.

Many developers think that creating visual tests is hard, as they require separate test cases, learning new frameworks and approaches, and dealing with flaky CI pipelines.
October 23, 2025 at 4:30 AM
I’ll be speaking at @droidcon.it in Turin about Android UI testing.

Here’s what I’ll cover:
• Getting started with natural language UI tests
• A technical comparison between Journeys, Espresso, UiAutomator, and Compose UI Test

Spoiler: There’s no one-size-fits-all solution.
👤🟢 Welcome back @alexzh.com to Droidcon Italy 2025!
Mobile Engineer, Educator & Author 🇮🇹🎤

🔎 “The Complete Android UI Testing Landscape: From Journey to Traditional Approaches”
it.droidcon.com/2025/agenda/

👉🏻 Curious who else is speaking at hashtag#DroidconItaly25? it.droidcon.com/2025/speakers/
October 12, 2025 at 3:31 PM
The ButtonGroup component from Material 3 Expressive replaces the SegmentedButtons component. It supports more shapes and includes overflow buttons for additional components that can't fit on the screen.

#JetpackCompose
September 25, 2025 at 7:00 AM
Compose Multiplatform 1.9.0 is here! It now supports parameters for preview functions, including:

• name
• group
• locale
• widthDp
• heightDp
• showBackground
• backgroundColor

More details: github.com/JetBrains/c...
September 18, 2025 at 4:30 AM
Building global software isn't just about translation - it's about understanding cultural context.

Here are 3 critical locale pitfalls to solve before shipping globally:

1. Currency formatting
2. Date interpretation
3. Number separators

Details 🔽
September 17, 2025 at 7:05 AM
Thanks for joining my @droidconLisbon talk on visual testing for adaptive layouts!

Here are the slides:
speakerdeck.com/alexzhukovi...
Mastering Adaptive Layouts: Visual Testing for Every Screen
Android’s device ecosystem has expanded beyond phones - from foldable devices and tablets to Android TVs. Building truly adaptive layouts needs more tha…
speakerdeck.com
September 5, 2025 at 9:59 AM
Need to build list and detail screens in your Jetpack Compose project that adapt to different device types?

Check out the ListDetailPaneScaffold component from the Material3 adaptive-layout dependency.
August 30, 2025 at 7:21 AM
Did you know you can control the tooltip's position relative to its anchor starting from "material3:1.5.0-alpha01"?

Tooltips support the following positions:
• Above
• Below
• Start
• End
August 14, 2025 at 4:30 AM
Here is one more reason why you need visual tests which will verify your components and screens against system configuration options, like font scale.

Remember: Not everyone uses the default font size.
July 23, 2025 at 4:30 AM
Did you know that Material 3 Expressive introduces many additional shapes that you can use in Jetpack Compose?
July 13, 2025 at 3:47 PM
Want to see how your UI adapts to different wallpapers?

You can preview dynamic colors directly in Android Studio using the "wallpaper" parameter for preview annotation.

Does your app support dynamic colors?
July 2, 2025 at 4:30 AM
Compose Multiplatform 1.8.2 is now available. With this update, you can use preview parameters for Compose Multiplatform previews.

⚠️ Currently, the multiple previews are rendered in IntelliJ IDEA 2025.1.2 (stable version) and not rendered in Android Studio.
June 18, 2025 at 5:39 AM
Are you looking for a simple way to give access to important actions and keep the UI clean? Then, try HorizontalFloatingToolbar. It was recently released as part of Material 3 Expressive components.

⚠️ Currently in alpha

#AndroidDev #MaterialDesign #JetpackCompose
June 17, 2025 at 4:30 AM
Recently, Apple changed its design system, and Google introduced Material Design 3 Expressive components to expand its existing design system. Both of these situations lead to a redesign of your application.

To ensure your UI looks as expected after the redesign, use visual tests.
June 12, 2025 at 5:47 AM
In Android Studio Narwhal, you can visually configure a preview for composable functions by clicking the gear icon next to your preview function.
June 5, 2025 at 4:30 AM
Ensure that your composable function is accessible. Do you have a preview for your UI? Then, verify it by selecting "Start UI Check Mode" for your preview in Android Studio.

This feature works for Compose Multiplatform code, too. (tested it in Android Studio Narwhal).
June 3, 2025 at 4:30 AM
Did you know you can activate TalkBack to verify your application on an Android emulator using the "Device UI shortcut" menu in Android Studio?
May 30, 2025 at 5:47 AM
Starting with Jetpack Compose 1.8.0, you have access to additional text overflow options. Here are the available options:

• Ellipsis
• StartEllipsis
• MiddleEllipsis
April 29, 2025 at 4:30 AM
Recently, Jetpack Compose 1.8.0 was released and it allows to adjust the text size to the size of the container.

Jetpack Compose 1.8.0 is available as part of the BOM: 2025.04.01

implementation(platform("androidx.compose:compose-bom:2025.04.01"))
April 25, 2025 at 7:23 AM
Did you know you can change the color mode and font size from the "Running Devices" panel in Android Studio without accessing the settings?

By using the "Device UI Shortcuts" feature, you can adjust:
• Color mode
• Navigation mode (gesture, buttons)
• Font size
• Display size
April 23, 2025 at 4:30 AM
I've just completed the "Visual Testing Tools and Services" section of my book on visual testing for Android projects.

I'd love to hear from developers and QA engineers: What screenshot testing tools do you use alongside screenshot testing frameworks?
April 19, 2025 at 10:48 AM
Android Studio Narwhal now includes a "Generate Preview" with Gemini.

My thoughts after playing with it:
• It generates fake data for previews
• It struggles with custom types
• It needs modification, but it speeds up the process

In the future, it might be a helpful tool for adding visual tests.
April 11, 2025 at 4:30 AM
Starting from Android Studio Narwhal, you can use the preview for common composable functions in Kotlin Multiplatform.
April 2, 2025 at 4:30 AM