Xamarin Forms Prism无法从android项目

时间:2018-04-04 07:17:05

标签: xamarin.forms prism

我使用的是Xamarin Forms Prism,我无法在android项目中使用我的PCL类。
常见例子:
这是PCL中的接口

namespace BlankApp.Helpers
{
   public interface IToast
   {
      void MakeLongToast(string msg);
   }
}

这是android项目中的类

namespace BlankApp2.Droid.DependencyService
{
   public class ToastImp : IToast
   {
   }
}

找不到IToast接口参考!

IDE提供了一条带有此消息的建议:"参考' projectname-WebAppMAinModule'并使用' projectname.Helpers.IToast' "
screenshot

实际上什么也没做!
在使用Prism时,我在XamarinForms中遇到这样的问题。在引用我的PCL时会忘记一些事情吗?

我正在使用
   Prism.Forms(7.0.0.396)    Xamarin.Forms(2.5.0.122203)
还有我的项目依赖项 here

1 个答案:

答案 0 :(得分:0)

您应该能够在特定于平台的代码(包括Android)中实现PCL接口并使用其类等。

使用以下步骤:

  1. 确保您的Android项目引用了您的PCL。

  2. 删除您的Android obj&bin文件夹。

  3. 重新编译您的PCL

  4. 重新编译PCL之后,重新编译Android项目

看看它现在是否可以识别您的界面。

如果上述方法无效,那么最后一个选择是:

  1. 关闭解决方案
  2. 重新打开解决方案

当您的项目无法识别新创建的界面时,这两种方法通常都可以使用。