2011-11-01 6 views
3

Я последовательно запускаю исключение исключения, когда пытаюсь установить несколько элементов UIBarButtonItem в MonoTouch.Установка нескольких UIBarButtonItems сбоя на устройстве, но не на симуляторе

В симуляторе проблем нет. Каждая кнопка, которую я добавляю, работает правильно. Только тогда, когда я развернуть на тестовом устройстве (iPhone 3G с прошивкой 4.2.1 установлен) это бросить эту ошибку:

- [UINavigationItem setRightBarButtonItems: анимационный]: непризнанные селектор посланные к экземпляру 0xef7af0

Я попытался используя свойство RightBarButtonItems и явный метод SetRightBarButtonItems, передавая экземпляр UIBarButtonItem [] в каждом случае.

Возможно, способ обойти это - использовать панель инструментов с настраиваемым представлением, но я бы скорее использовал API как рекламируемый, особенно если он работает правильно в симуляторе.

Кто-нибудь сталкивается с этим?

ответ

3

Предполагаю, что вы используете MonoTouch 5.0 и последние iOS SDK (5) и Xcode 4.2.

Селектор setRightBarButtonItems:animated: является новым в iOS5. Это означает, что он будет работать в симуляторе, который по умолчанию по умолчанию равен 5.0. Однако это не будет работать в более старых версиях iOS (например, как 4.2.1).

На этом этапе у вас есть два варианта:

  • избежать возможности iOS5; или

  • обнаруживает, во время выполнения, какая версия iOS используется и настраивает ваше приложение на то, что доступно.

Смежные вопросы