gpt4 book ai didi

xamarin - 在 Xamarin.Android 中,需要通过使用 DependencyService 从 Xamarin.Forms 调用来使用 Activity

转载 作者:行者123 更新时间:2023-12-03 15:21:20 25 4
gpt4 key购买 nike

我手动实现 https://developers.google.com/pay/api/android/guides/tutorial在 Xamarin.Forms + Xamarin.Android 中。我调用 Xamarin.Forms:

DependencyService.Get<IPay>().Pay();

在 Xamarin.Android 我实现
public class Pay_Droid : IPay
{

public void Pay()
{
...
AutoResolveHelper.ResolveTask(
paymentsClient.LoadPaymentData(request),
this,
LOAD_PAYMENT_DATA_REQUEST_CODE);
...
}

}

但是“这个”有问题 - 需要使用事件。如何实现?

最佳答案

首先,您可以在 MainActivity 类中创建公共(public)静态 MainActivity,然后在 MainActivity OnCreate() 方法中将当前 MainActivity 分配给 macvivity:

public static MainActivity macvivity;
protected override void OnCreate(Bundle savedInstanceState)
{
TabLayoutResource = Resource.Layout.Tabbar;
ToolbarResource = Resource.Layout.Toolbar;

base.OnCreate(savedInstanceState);


macvivity = this;

global::Xamarin.Forms.Forms.Init(this, savedInstanceState);
LoadApplication(new App());
}

最后,您可以通过 MainActivity.macvivity 进行事件
public void Pay()
{
...
AutoResolveHelper.ResolveTask(
paymentsClient.LoadPaymentData(request),
MainActivity.macvivity,
LOAD_PAYMENT_DATA_REQUEST_CODE);
...
}

关于xamarin - 在 Xamarin.Android 中,需要通过使用 DependencyService 从 Xamarin.Forms 调用来使用 Activity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58290425/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com