[Enhancement] Embedding MAUI-Open MAUI "Page" from Xamarin.Android #9606
Labels
area-controls-general
General issues that span multiple controls, or common base classes such as View or Element
platform/android 🤖
proposal/open
t/native-embedding
Milestone
Description
As you can see in the current MAUI PageExtensions available for Android and iOS, MAUI allows you to convert any type of MAUI
Page
to a nativeViewController
in iOS, but it only allows converting a MAUIContentPage
to a nativeFragment
in Android.The MAUI
Page
plays a major role when you are trying to implement an MAUINavigationPage
orTabbedPage
allowing for a dashboard with tabs and subsequently being able to navigate between pages without having to go back into native code. So, currently I can handover complete control to MAUI on iOS, but on Android I can only use MAUI to display a singleContentPage
with no control over navigation.My request is to extend the API to allow opening an MAUI
Page
fromXamarin.Android
, rather than just aContentPage
.Public API Changes
This would require creating an overridden constructor in the
/AppCompat/PageExtensions.cs
file referenced above that would take aPage
and instead of aContentPage
. I am not sure of the other changes this would require to make this happen in the MAUI.Platform.Android
project.Intended Use-Case
This would be great for teams trying to use Embedding to convert projects from using
Xamarin.Native
to MAUI, for easier maintenance & implementation of features, to prevent so many people from switching to other Multi-platform App UI frameworks instead. We could create a "Migration Guide from Xamarin Native to MAUI" too which would be super attractive for so many companies!Added Explanation: You can open NavigationPages on iOS, as you can see in this sample here which allows using functions like
PushAsync
orPopAsync
, by simply doing:So for Android as seen here, currently we can only do this: ✅
and we need to create a way to do something like this: ❌
PS: Here's a sample Github that contains a playground created as a Spike. If someone knows of a work around, please let me know.
The text was updated successfully, but these errors were encountered: