绑定项目可以找到类型Basetype属性

时间:2014-12-01 13:06:27

标签: c# ios binding xamarin nativelibrary

我正在尝试绑定一个objective-c库。无法建立BaseType属性!

我正在关注Xamarin的网站教程。我也尝试在网上搜索,我找到了一些解决方案,比如:

  1. 有人说我没有创建Xamarin ios bindind项目,但是 我有ApiDefinition.cs和StructsAndEnums.cs;

  2. 将适当性设置为 ObjcBindingApiDefinition ;

  3. 使用 Objective Sharpie ,但会出现很多错误。

  4. 我不记得了,但它们都不起作用。


    以下是修改后的自动生成代码:

    namespace BindingProject
        {
            using System;
            using System.Drawing;
            using System.Collections;
    
            using MonoTouch.CoreGraphics;
            using MonoTouch.CoreAnimation;
    
            using MonoTouch.ObjCRuntime;
            using MonoTouch.Foundation;
            using MonoTouch.UIKit;
    
            [**BaseType** (typeof (NSObject))]
    
            interface UIResponder {
    
            }
        }
    

    我创建了解决方案的项目:

    1. C#
    2. IOS
    3. 选择Classic或Unified API(我现在不记得了,因为两者都有 有类型)
    4. 我选择了 IOS绑定项目
    5. 我所知道的是,当我选择Classic,Unified或Unified时,我找不到任何MonoTouch类型。

1 个答案:

答案 0 :(得分:1)

MonoTouch类型是Classic API,在您的描述中使用的是Unified API。 Xamarin现在有两套API共存,请确保不要将它们混合在一起。您需要选择Classic API并遵循其规则,或使用Unified API并遵循自己的规则。差异主要是参考dll,命名空间和类型。

http://developer.xamarin.com/guides/cross-platform/advanced/submitting_components/unified_components/