Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Метод UISplitViewController toggleMasterVisible. Где определяется метод?

Автор вопроса: zonoОтветов: 2

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

(In Button action. It works)
.h
@interface DetailViewController : UIViewController <UISplitViewControllerDelegate>
@end

.m
UIBarButtonItem *listBarButtonItem = [[UIBarButtonItem alloc]
initWithImage:[UIImage imageNamed:@"list.png"]
style:UIBarButtonItemStyleBordered
target:self.splitViewController
action:@selector(toggleMasterVisible:)];


(I want to expand the method)
.m
UIBarButtonItem *listBarButtonItem = [[UIBarButtonItem alloc]
initWithImage:[UIImage imageNamed:@"list.png"]
style:UIBarButtonItemStyleBordered
target:self
action:@selector(toggleMasterVisibleIfCondtionIsOK:)];

-(void)toggleMasterVisibleIfCondtionIsOK
{
     if(isConditionOK){
          [self.splitViewController toggleMasterVisible];
     }
}

Однако я получил сообщение об ошибке: "Нет видимого @interface для объявления" UISplitViewController "". Где определяется метод? Я не смог найти метод в ссылке(http://developer.apple.com/library/ios/#documentation/uikit/reference/UISplitViewController_class/Reference/Reference.html) и как я могу вызвать метод? Любая помощь будет оценена.

iosuisplitviewcontroller

Ответы

Ответ 1 · рейтинг 7 · Jimmypooza

Я получил его для работы с:

[self.splitViewController performSelector:@selector(toggleMasterVisible:)];

Ответ 2 · malhal

Просто определите его в анонимной категории следующим образом:

@interface UISplitViewController()
- (void)toggleMasterVisible:(id)sender;
@end

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы