在设备上设置多个UIBarButtonItems失败,但在模拟器上失败

时间:2011-11-01 02:22:25

标签: ios xamarin.ios ios5 uibarbuttonitem ios-simulator

当我尝试在MonoTouch中设置多个UIBarButtonItem时,我一直遇到无效的选择器异常。

在模拟器中,根本没有问题。我添加的每个按钮都能正常工作只有当我部署到测试设备(安装了iOS 4.2.1的iPhone 3G)时才会抛出此错误:

- [UINavigationItem setRightBarButtonItems:animated:]:无法识别的选择器发送到实例0xef7af0

我尝试使用RightBarButtonItems属性和显式SetRightBarButtonItems方法,在每种情况下都传递一个UIBarButtonItem []实例。

也许解决这个问题的方法是使用带有自定义视图的工具栏,但我宁愿只使用宣传的API,特别是如果它在模拟器中正常工作。

有人碰到这个吗?

2 个答案:

答案 0 :(得分:3)

我假设你使用的是MonoTouch 5.0和最新的iOS SDK(5)和Xcode 4.2。

setRightBarButtonItems:animated:选择器是iOS5中的新选择器。这意味着它可以在模拟器中工作,可能默认为 5.0 。但是,这在iOS的旧版本中不起作用(例如4.2.1)。

在这个阶段,您有两个选择:

  • 避免iOS5功能;或

  • 在运行时检测正在使用的iOS版本并将应用程序调整为可用的版本。

答案 1 :(得分:0)

检查出来:http://osmorphis.blogspot.com/2009/05/multiple-buttons-on-navigation-bar.html

如果您想为iOS添加多个右键,则可以使用它。 5.0