您可以覆盖OnActivityResult
方法在你的MainActivity
在你的安卓项目中。 Xamarin.Forms 整个应用程序仅使用一项活动(在幕后)。所以就用这个吧。
要通知您的页面(或 PCL/Forms 项目中的另一个类),请使用消息中心由 Xamarin.Forms 提供。
这是一个例子:
您的 MainActivity(android 项目)中的方法:
protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
{
// Send trough the messaging sender (maybe someone subscribes to it)
MessagingCenter.Send(
new ActivityResultMessage {RequestCode = requestCode, ResultCode = resultCode, Data = data}, ActivityResultMessage.Key);
}
然后你的消息传递类:
public class ActivityResultMessage
{
public static string Key = "arm";
public int RequestCode { get; set; }
public object ResultCode { get; set; }
public object Data { get; set; }
}
然后在类中使用以下代码来处理结果:
// Subscribe to the onactivityresult-message
MessagingCenter.Subscribe<ActivityResultMessage>(this, ActivityResultMessage.Key, (sender) =>
{
// do some magic =)
});
请阅读有关消息中心的内容(上面提供的链接),以了解背后的内容。