Sharpnado.Tabs 4.0: Pure MAUI Touch Effects Across All Platforms
HI THERE! Long time no see eeeeh? Well I have been kind of busy, Flutter stuff, musical projects, and such... But lately I got back to some good old MAUI, and I must say since version 9.0, it's very nice!
I wanted to give some love to my cherished Tabs, so here it is, a big refactoring, a lot of fixes, some new features, here it comes \o/
I'm excited to release Sharpnado.Tabs 4.0, which brings a major improvement I've been working on for months: pure MAUI touch effects that work consistently across Android, iOS, Windows, and MacCatalyst without any platform-specific code.
Complete Platform Coverage
Version 4.0 now officially supports all major MAUI platforms with full feature parity:
Supported MAUI platforms |
---|
✅ Android |
✅ iOS |
✅ Windows |
✅ Mac |
Here's how the same code looks running across all platforms:
iOS | Android | Windows | MacCatalyst |
---|---|---|---|
Each platform gets native-feeling interactions while using the exact same XAML and C# code.
The Big Change: Pure MAUI Touch Effects
The main focus of this release was eliminating the need for custom platform handlers. Version 4.0 introduces three new touch effect types that work everywhere:
CircularRipple Effect
Perfect for material design applications:
<tabs:TabHostView TouchColor="{StaticResource Primary}"
TouchEffectType="CircularRipple">
<tabs:MaterialUnderlinedTabItem Label="Tab 1" />
<tabs:MaterialUnderlinedTabItem Label="Tab 2" />
</tabs:TabHostView>
Standard Touch Effect
Clean and subtle for most applications:
<tabs:TabHostView TouchColor="{StaticResource Secondary}"
TouchEffectType="Standard">
<tabs:MaterialUnderlinedTabItem Label="Tab 1" />
<tabs:MaterialUnderlinedTabItem Label="Tab 2" />
</tabs:TabHostView>
PoorsManRipple Effect
A fallback option that works great everywhere:
<tabs:TabHostView TouchColor="BlueViolet"
TouchEffectType="PoorsManRipple">
<tabs:MaterialUnderlinedTabItem Label="Tab 1" />
<tabs:MaterialUnderlinedTabItem Label="Tab 2" />
</tabs:TabHostView>
What's Also New
Beyond the touch effects, version 4.0 includes several improvements based on community feedback:
- SelectedIconSource: Display different icons for selected vs unselected states
- Enhanced MacCatalyst support: Better desktop experience with proper touch handling
- Improved performance: Faster SelectedItem handling and scroll-to-selected functionality
- Modern gesture handling: Updated to use MAUI's latest gesture APIs
- Lot of fixes: This release fixes most of the issues opened in the repo
Installation
Getting started is simple. Add the NuGet package:
dotnet add package Sharpnado.Tabs.Maui --version 4.0.0
Migration from 3.x
Most existing code will work without changes. Old platform specific effects with attached properties like TapCommand
or FeedbackColor
are replaced by TabHostView
properties TouchEffectType
and TouchColor
.
Examples in the Wild
You can see all these effects in action in the sample project:
- TabM.xaml - CircularRipple and Standard effects
- TabA.xaml - Standard and PoorsManRipple effects
- TabU.xaml - CircularRipple with SelectedIconSource
Why This Matters
Before this release, getting consistent touch feedback across platforms required platform-specific implementations. Now you get beautiful ripple effects everywhere with just two properties. This makes Sharpnado.Tabs easier to use and more reliable across your entire app ecosystem.
The library continues to support all the features you know: material design tabs, custom styling, badges, vertical orientation, scrollable tabs, and more. Everything just works better now.
Resources: