我正在使用 Xamarin 创建一个跨平台的移动应用程序,并且我正在尝试使用 MessagingCenter 在事件发生时发送消息。根据手机运行的是 iOS 还是 Android,应以不同方式处理该事件。
我能够从我的 PCL 向 MainActivity.cs(在 Droid 中)发送消息。
这是我发送消息的方式:
MessagingCenter.Send<object, string>(this, "ChangeVenue", "Zw325nfe2");
以下是我在 MainActivity.cs 中为 Android 订阅该消息的方式:
MessagingCenter.Subscribe<object, string>(this, "ChangeVenue", (sender, msg) =>
{
//stuff
});
但是,我无法为 iOS 做同样的事情。我想我只是不知道在哪里添加订阅。Main.cs 不起作用,因为无法从静态上下文中引用“this”。我在想 AppDelegate.cs 可能是订阅消息的好地方,但把它放在 FinishedLaunching() 中没有意义。
如何使用 MessagingCenter for iOS 构建订阅消息?