“Can We Build Liquid Glass in Flutter?” — A Lunch-Break Dive into Platform Views

Md. Al - AminMd. Al - Amin
4 min read

It was just another regular day at the office. The sun was blazing outside, the AC was fighting hard inside, and my stomach had already started growling long before noon.

As I stood up from my desk, my colleague Shadman Sakib, a Senior Software Engineer at Vivasoft Limited, joined me on the way to lunch. Between small talk and food cravings, he suddenly hit me with a question I hadn’t expected:

“Hey, Al-Amin, iOS 26 just launched Liquid Glass. You think we can do that in Flutter?”

I paused. Chewed my thoughts more than my food. And said the first thing that came to mind:

“Hmm… maybe through a method channel? Or we could fake it using custom blur and transparency. Or just wait until the Flutter team supports it natively?”

He grinned. “You ever tried using Platform Views?”

And just like that, our chicken curry discussion turned into a deep dive into iOS internals, Flutter rendering, and hybrid UI techniques.

So, What Is Liquid Glass?

If you missed WWDC 2025, Apple introduced a sleek new visual style: Liquid Glass.

It’s not just another blur. It’s reactive. Dynamic. It bends and refracts content behind it. It adapts to ambient light. It’s part science fiction, part UI design.

Apple made it easy to implement in SwiftUI or UIKit using their new materials and view modifiers like .glassEffect().

But in Flutter?

That’s where things get tricky.

Our First Thoughts: The Obvious Options

As we munched through our lunch, we ran through the options:

Method Channel

Write native Swift code for a UIVisualEffectView, call it via a method channel. That works… but doesn’t integrate cleanly with Flutter’s UI tree.

Custom Flutter UI

Use BackdropFilter, ImageFilter.blur, semi-transparent containers. That’s the good old Flutter way. Impeller makes it smoother. But still, it’s not true “Liquid Glass” there’s no refraction, no native responsiveness.

Wait for Flutter Core Support

We could wait until the Flutter team officially supports iOS 26’s new materials. But… who knows when or if that’ll happen?

That’s when Shadman bhai repeated:

“Have you checked out Platform Views*?”*

Platform Views: The Hidden Power Tool

That evening, I opened up the Flutter documentation on iOS platform views and had a whoa moment.

Turns out, you can host native iOS views inside Flutter apps through Hybrid Composition using UiKitView.

So yeah, that UIVisualEffectView? We could wrap it as a native view and render it inside Flutter. Here’s the idea:

Dart Side:

return UiKitView(
  viewType: 'liquid-glass-view',
  creationParams: <String, dynamic>{},
  creationParamsCodec: const StandardMessageCodec(),
);

Swift Side:

func createNativeView(view _view: UIView){
    let blurEffect = UIBlurEffect(style: .systemUltraThinMaterial)
    let blurView = UIVisualEffectView(effect: blurEffect)
    blurView.frame = _view.bounds
    blurView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
    _view.addSubview(blurView)
}

Just like that, we’re using real native Liquid Glass in Flutter.

Pros & Cons We Discovered

The Good

  • True native feel — it’s the real UIVisualEffectView.

  • Responsive to motion, light, and background content.

  • Works right now — no need to wait for Flutter updates.

The Trade-offs

  • Performance: Platform views are composited outside Flutter’s main rendering engine. You might see jank on older devices.

  • Limited composition: You can’t apply ShaderMask, ColorFiltered, or complex animations over them.

  • Complexity: More setup, more native code, more chances to break.

Should We Use Platform Views for Liquid Glass?

Here’s how we broke it down after a few days of experimentation:

  • Small elements like buttons, cards, headers: Use Platform Views

  • Full-screen background blur: Maybe test performance first

  • Cross-platform UI: Stick to pure Flutter shaders

  • Dynamic, realistic iOS-only design: Go native with Platform Views

Final Thoughts

That one question from Shadman bhai over lunch sparked a chain of curiosity that led me to dig deeper into one of Flutter’s most powerful but underused features.

Flutter is known for painting its own pixels and doing things its way. But sometimes, when the native platform has something truly magical like Liquid Glass you just have to reach out and grab it.

And that’s what Platform Views allow you to do.

Bonus: What I’d Like to See Next

  • Flutter SDK support for native materials via CupertinoGlassView.

  • Simplified wrappers for platform views.

  • Maybe a community plugin: liquid_glass_flutter?

Your Turn

Have you tried building dynamic UIs like Liquid Glass in Flutter? Used Platform Views before? Share your experience I’d love to learn from it.

0
Subscribe to my newsletter

Read articles from Md. Al - Amin directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Md. Al - Amin
Md. Al - Amin

Experienced Android Developer with a demonstrated history of working for the IT industry. Skilled in JAVA, Dart, Flutter, and Teamwork. Strong Application Development professional with a Bachelor's degree focused in Computer Science & Engineering from Daffodil International University-DIU.