Получить вложенный вид, содержащий подвид - PullRequest
0 голосов
/ 02 января 2012

Если у меня есть представление (mainView), в которое я добавил подпункты.Как мне получить экземпляр подпредставления для mainView?

У меня есть кнопка в тех подпредставлениях, которая при нажатии должна вызывать метод в mainView, поэтому я попытался:

[myButton addTarget:self.presentingViewController
             action:@selector(myMethod:)
 forControlerEvents:UIControletcetc];

и

[myButton addTarget:self.parentViewController action:@selector....];

Я читал, что parentViewController теперь возвращает nil в iOS 5, но presentingViewController, похоже, не способ сделать это, потому что он не представлен модально.Это просто подпредставление.Есть намеки?

Ответы [ 2 ]

1 голос
/ 02 января 2012

Ваш вопрос не проясняет, говорите ли вы о представлениях или контроллерах представлений.Используйте свойство superview для доступа к родителю представления.

Как правило, нет способа перейти от представления к его контроллеру представления.

0 голосов
/ 02 января 2012

Мне кажется, что вы пытаетесь сообщить своим взглядам об объектах, выходящих за их рамки.

Если вам нужно уведомить о событии кого-либо, кто включил ваше представление, вы можете использовать делегат для этого.

Скажи:

@protocol YourClassDelegate

@optional

- (void)instanceOfYourClass:(YourClass *)instance tappedButton:(UIButton *)button;

@end

, а затем

@interface YourClass

@property (nonatomic, assign) id<YourClassDelegate> delegate;

@end

Я надеюсь, что вы можете взять его отсюда, синтезируя свойство, назначая делегат и вызывая метод, когда вам нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...