在 MainPage.xaml.cs 中使用 Android 特定代码

Posted

技术标签:

【中文标题】在 MainPage.xaml.cs 中使用 Android 特定代码【英文标题】:Use Android specific code in MainPage.xaml.cs 【发布时间】:2019-10-29 13:22:14 【问题描述】:

我正在编写一个跨平台的应用程序。现在,假设程序在 android 设备上运行,我想从位于命名空间 ProjectName 中的 MainPage.xaml.cs 中的命名空间 ProjectName.Droid 中调用一个类。这可能吗?如果没有,是否有其他方法可以实现。

【问题讨论】:

见:docs.microsoft.com/en-us/xamarin/xamarin-forms/app-fundamentals/… 【参考方案1】:

您可以在MainPage.xaml.cs 中使用MessasingCenter 将消息发送到ProjectName.Droid 中的代码,前提是.Droid 中的代码Subscribe 到该消息。实现细节可以在here找到。

第二个选项是使用@mshwf 提到的依赖服务。这是您在共享项目中编写接口并正常调用这些方法的地方。 然后你必须在.Droid项目中编写接口的实现。 一个很好的例子可以找到here

【讨论】:

以上是关于在 MainPage.xaml.cs 中使用 Android 特定代码的主要内容,如果未能解决你的问题,请参考以下文章

C#和XAML如何让按钮在第一次点击时响应

我需要两个xmlns:local =“clr-namespace”?

Windows Phone在隔离存储里存取图片文件

将方法从后面的代码转换为 ICommand 数据绑定 Xamarin.Forms

命名控件存在于 Windows 10 但不存在于 Windows 8.1

C# winform中使用动态加载控件的属性