gpt4 book ai didi

xamarin - 如何从 Xamarin 表单页面启动 Android 事件?

转载 作者:行者123 更新时间:2023-12-03 22:07:07 26 4
gpt4 key购买 nike

我知道我可以从原生 Android 事件启动 Xamarin Forms 页面,但我如何从 Xamarin Forms ContentPage 启动原生 Android 事件。我尝试使用 DependencyService 但没有成功。

最佳答案

我想通了。

首先我需要在 Xamarin 项目中创建这样的接口(interface)

public interface IRecordVideoPage
{
void StartNativeIntentOrActivity();
}

然后我使用依赖服务从我的 Xamarin Forms 内容页面启动原生 Android 事件,如下所示:

DependencyService.Register<IRecordVideoPage>();
DependencyService.Get<IRecordVideoPage>().StartNativeIntentOrActivity();

接下来我在我的 Android 项目中创建了一个 RecordActivity 类来加载测试事件

[assembly: Xamarin.Forms.Dependency(typeof(RecordActivity))]
namespace StreamTest.Droid
{
[Activity(Label = "RecordActivity")]
public class RecordActivity : IRecordVideoPage
{
public void StartNativeIntentOrActivity()
{
var intent = new Intent(Forms.Context, typeof(Test));
Forms.Context.StartActivity(intent);
}
}

最后我在测试类中设置内容 View :

public class Test : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
{
public Test() { }

protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
SetContentView(Resource.Layout.Record);
}
}
}

关于xamarin - 如何从 Xamarin 表单页面启动 Android 事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44432920/

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