问题
I am new to the xamarin app development, I have some questions :
- Is it possible to call the platform specific page from the Xamarin.Form page?
- Can I do Page Navigation from view model?
Let me explain clearly.
I have a Page XFView.xaml
, XFView.xaml.cs
and XFViewModel.cs
in PCL (Xamarin.Forms) project from XFView.xaml.cs
or XFViewModel.cs
i want to call MAActivity.cs
page which is present in Xamarin.Andriod
project
I tried a lot but got getting any idea.
回答1:
Whenever you would like to call something from native (MAActivity.cs
in your case), you have to use DependencyService.
For example:
Setup dependency service
// PCL Project public interface INativePages { void StartMA(); } // MonoDroid Project [assembly: Dependency(typeof(NativePages))] public class NativePages : INativePages { public void StartMA() { var intent = new Intent(Forms.Context, typeof(MAActivity)); Forms.Context.StartActivity(intent); } }
Invoke in PCL
// PCL Project DependencyService.Get<INativePages>().StartMA();
来源:https://stackoverflow.com/questions/28688133/how-to-call-platform-specific-page-from-xamarin-forms