创建的MessagingCenter无效, Guid变量生成的值不会移动到其他页面。
CustomWebviewRenderer.cs中的代码
Guid guid = Guid.NewGuid();
MessagingCenter.Send<CustomWebViewRenderer, Guid>(this, "Hi", guid);
MainActivity.cs
Guid guid;
MessagingCenter.Subscribe<CustomWebViewRenderer, Guid>(this, "Hi",(arg1, arg2) =>
{
guid = arg2;
});
答案 0 :(得分:0)
对我而言,这也是错误的,所以我只是在共享代码中创建了一个消息类,它运行良好,并从Android调用它。
Android代码示例:
Messager.Notify.TabBarClicked((int)tab.Position);
共享代码示例:
public class Messager
{
public readonly static Messager Notify = new Messager();
//-------------------------------------------------------------------
public void TabBarClicked(int tag)
//-------------------------------------------------------------------
{
MessagingCenter.Send(this, "TabBarClicked", tag.ToString());
}
// something more...
}
适应你的情况.. 另一个错误点是,如果它们具有少于或多于1个arg参数,那么我对消息失败很多。对我来说,如果参数不是String类型,他们也讨厌。不知道为什么,所以只是使用变通方法..