Xamarin iOS绑定库中没有智能感知
问题描述:
我正在尝试创建一个绑定库,但我没有Visual Studio 2013中的Intellisense支持。我的Windows计算机连接到带有最新Xamarin的MacOS 10(El Capitan)工作室,甚至最新的XCode 8(我不知道这是否必要)Xamarin iOS绑定库中没有智能感知
我不知道是否有任何引用缺失。我试图添加对iOS附件库的支持,称为“libdtdev.a”和相应的头文件“DTDevices.h”。尽管VS成功构建了该项目,但我无法在另一个Xamarin.iOS项目中使用该库。在下面的代码中,“BaseType”,“NSObject”和“Export”语法是未知的。
using System;
using ObjCRuntime;
using Foundation;
using UIKit;
namespace LineaProSDK
{
[BaseType(typeof(NSObject))]
interface DTDevices
{
[Export("sharedDevice")]
DTDevices sharedDevice();
}
}
这是智能感知如何显示可用的选项:
有人可以告诉我什么,我做错了吗?我是否缺少一些参考?这些都是单声道引用我已经安装了Windows客户机上,但只有“Xamarin.iOS”被默认选择:
答
Xamarin教程不提供智能感知对于这种情况。实际上提交一个bug是一个好主意,所以Xamarin团队可以改进它。
关于iOS绑定和ApiDefinition,建议的方法是使用Sharpie工具,它可以从.h头文件(你提到你有)生成ApiDefinition。这样,你不需要编写代码自己,并不需要智能感知
很好的例子就在那里
记号笔绑定 - 输出DTDevices - 命名DTDevices -sdk iphoneos8.1 path-to-DTDevices.h -unified
确保您使用-sdk选项的有效值。