首页 > 解决方案 > 每当用户导航到 Xamarin.Android 中的页面时,如何创建一个方法

问题描述

在我的 Xamarin.Forms 应用程序中,我希望仅在 Android 用户转到我的应用程序中的某个页面时触发一个方法。我知道 MainActivity.cs 有一个 OnCreate(),但是当用户导航到我的共享项目中的指定页面时是否有类似的东西?

因此,该方法不会在应用打开时执行,而是在 Android 应用的用户导航到某个页面时执行。

谢谢!

标签: c#androidxamarinxamarin.formsxamarin.android

解决方案


所有 Xamarin Forms 页面都有一个OnAppearing方法,该方法将在页面显示时调用

public partial class MyPage : ContentPage
{
    public MyPage ()
    {
        InitializeComponent ();
    }

    public override void OnAppearing()
    {
      // call your method here
    }
}

然后,您可以使用MessagingCenter将消息从页面发送到您的MainActivity

MainActivity

MessagingCenter.Subscribe<MyPage>(this, "MyPageAppearing", (sender) =>
{
    // Do something whenever the message is received
});

并在您的页面中OnAppearing

MessagingCenter.Send<MyPage>(this, "MyPageAppearing");

推荐阅读