Эти два термина синонимичны в моем ментальном словаре. Суперпредставление - это представление, которое содержит ваше представление. Что вы ожидаете, что это значит?

ичок в Objective C и какао. Я просто не понимаю, как отправить супервизию UIView. Я не могу заставить это работать. Вот что я попробовал до сих пор:

В моем MainView у меня есть метод с именем resetDrawType:

- (void) resetDrawType {
   self.drawType = foo;
}

Также в MainView я создаю подпредставление и добавляю его в MainView:

mySubView *mySubView = [[mySubView alloc] initWithFrame:CGRectMake(foo, foo, foo, foo)];
[self addSubview:mySubView];
[mySubView release];

Затем, когда подпредставление завершило рисование, я хочу отправить сообщение resetDrawType своему суперпредставлению, которое является MainView.

Я пробовал это

 [(MainView*)[self superview] resetDrawType];

а также

 [(MainView*)self.superview resetDrawType];

... что не сработало. Я узнал о неформальных протоколах, поэтому я добавил этот код в MainView.h

 @interface NSObject ( resetters )
    - (void) resetDrawType;
 @end

Но все равно ничего. Затем я узнал об этой вещи селектора и попробовал это в подпредставлении:

 if ([self.superview respondsToSelector:@selector(resetDrawType:)])
    [self.superview performSelector:@selector(resetDrawType) withObject:nil];

Это также не сработало. Что я делаю неправильно? Спасибо за вашу помощь.

Ответы на вопрос(2)

Ваш ответ на вопрос