Получение основного UIView Subview - PullRequest
0 голосов
/ 09 марта 2011

По сути, иерархия представления выглядит следующим образом:
A (класс UIViewController)
- B (подпредставление A.view) (класс UIView)

B, имеет класс и одинфункций требует получения некоторой информации от A.

Каков наилучший способ вызова функции в A из B?

Ответы [ 2 ]

2 голосов
/ 09 марта 2011

Если B является подпредставлением A, [B superview] является A.

Обновление 1

Если вы ищете представление controller , для которого A является view, проверьте этот ответ на аналогичный вопрос . В итоге, согласно документации UIResponder , если экземпляр UIView является view UIViewController, его nextResponder будет контроллером представления (иначе, nextResponder является superview). * * тысяча двадцать-одна

Обновление 2

Если A является контроллером , а B является подпредставлением A.view, вы можете добраться до A следующим образом:

UIResponder *A = [[B superview] nextResponder];

Имейте в виду, что тип возвращаемого значения nextResponder равен UIResponder *, поэтому вы можете проверить, что A на самом деле является UIViewController, используя isKindOfClass:.

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