MonoTouch / Three20:在TTLauncherView的第一页添加许多项目

时间:2012-01-31 16:23:28

标签: c# ios binding xamarin.ios three20

我在Three20的TTLauncherView中发现了一些意想不到的行为。

创建这样的标准视图后 var launcher = new Three20.TTLauncherView();

如果我尝试添加TTLauncherItem这样的项目

launcher.AddItem(item1, false);
launcher.AddItem(item2, false);

它为每个项目创建一个新页面。

阅读some Objective-C sample我在C#中遇到过这样的内容,但由于运行时System.MissingMethodException: Method not found: 'MonoTouch.Foundation.NSObject.IsNewRefcountEnabled',它既不起作用。

var items = NSArray.FromObjects(NSArray.FromObjects (item1, item2));
launcher.Pages = items;

那么如何使用官方的Three20绑定将许多项目添加到使用MonoTouch的TTLauncherView的第一页?

1 个答案:

答案 0 :(得分:1)

  

System.MissingMethodException:找不到方法:'MonoTouch.Foundation.NSObject.IsNewRefcountEnabled

此错误来自使用MonoTouch 5.1+编译的绑定,其中提供了新的引用计数模式。

如果您使用的是MonoTouch 5.0.x(最新稳定版),那么您需要重建 Three20 绑定库才能在项目中使用它们。

否则,您可以更新到最新的MonoTouch(5.2.1)测试版,以使用您已有的绑定二进制文件。一个稳定的版本应该很快就可以使用,因此短期使用beta可能比你更容易(比重建绑定)。