![]() |
|
|
![]()
|
|
| cosamia |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 231 Регистрация: 11.5.2005 Репутация: нет Всего: нет |
Структура storyboard следующая:
splitViewController где к detail подключен detailVC1 а к мастеру master1 master1 меняется на master2 и мастер2 должен отобразить новый результат на detail master2 нельзя подключить через segue на detailVC1 - вообще не будет работать Поэтому создан клон detailVC1 который условно будем называть detailVC2 и соответственно мастер2 имеет сегвей на этот детейл2 Тут все работает, однако есть странная проблема: пока детейл1 выполняет обработку, в toolBar отображется ActivityIndicatorView однако когда детейл2 выполняет обработку в toolBar ничего не отображается хотя property на этот ActivityIndicatorView не нулевое У меня впечатление что этот индикатор работает в detail1 хотя на экране detail2 (они оба наследуются от одного VC) И вот тут моих знаний не достаточно как уладить эту ситуацию |
|||
|
||||
| Bitter |
|
|||
![]() Опытный лентяй ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1209 Регистрация: 15.8.2004 Где: Харьков, Ukraine Репутация: 10 Всего: 27 |
В Вашем описании сам черт не разберет что Вы имели в виду
|
|||
|
||||
| Maksys |
|
|||
|
Future Splasher ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1289 Регистрация: 15.6.2005 Где: Екатеринбург Репутация: нет Всего: 17 |
Скажите себе: "Все должно быть проще!!!". И ищите варианты.
|
|||
|
||||
| cosamia |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 231 Регистрация: 11.5.2005 Репутация: нет Всего: нет |
splitVC ----navigationC ---S1--> Master1---S2--->Master2 | | | |---------------Detail2 | ----------Detail1 Detail1: MyDetailVC1 Detail2: MyDetailVC1 |
|||
|
||||
| Bitter |
|
|||
![]() Опытный лентяй ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1209 Регистрация: 15.8.2004 Где: Харьков, Ukraine Репутация: 10 Всего: 27 |
Ваша схема напоминает выкидыш младенца.
Во-первых объект segue имеет тип, это может быть push или modal или другие типы, что вы там используете известно только вам и Иисусу Дальше, что значит вот эта часть? Master2 | |---------------Detail2 и каким боком к этому всему относится тулбар? |
|||
|
||||
| cosamia |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 231 Регистрация: 11.5.2005 Репутация: нет Всего: нет |
Какая разница какое сегвей если проблем с сегвеем нет? Естественно при замене мастеров сегвей - пуш А тип сегвея от мастера к детейл - реплейс Тулбар находится у вьюшки Детейл1 (Детейл2 - копия Детейл1) Мастер2---Детейл2 означает связь на вьюшке между мастер2 и детейл2 через сегвей типа реплейс Проблема как я описал выше состоит в том, что спиннер сейчас добавляется только в Детейл1 Однако если мастер1 будет заменен на мастер2 то при вызове сегвея с мастер2 на детейл2 спиннер не появляется в детейл2 Добавлено через 1 минуту и 10 секунд Схема нарисованная выше - то что видно на сторибоард В данном случае изображение текстовое а не графическое |
|||
|
||||
| Bitter |
|
|||
![]() Опытный лентяй ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1209 Регистрация: 15.8.2004 Где: Харьков, Ukraine Репутация: 10 Всего: 27 |
если вы добавляете спинер в детэил1, то почему он должен быть виден в дитэил2?
|
|||
|
||||
| cosamia |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 231 Регистрация: 11.5.2005 Репутация: нет Всего: нет |
ок, еще раз: detail1, detail2 - идентичны detail1: MyDetailVC detail2: MyDetailVC спиннер добавляется исключительно программно в toolbar иными словами контроллер MyDetailVC где и происходит добавление не знает в кого он добавляет в detail1 или detail2 -ему без разницы А кого показать сейчас - detail1 или detail2 определяет segue |
|||
|
||||
| Bitter |
|
|||
![]() Опытный лентяй ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1209 Регистрация: 15.8.2004 Где: Харьков, Ukraine Репутация: 10 Всего: 27 |
я правильно понимаю, что тулбар находится в каждом из дитэйлов? и соответственно спинер добавляется в свой тулбар. В каком месте добавляете и как? Пробовали спинер поставить сразу в сторибоарде?
|
|||
|
||||
| cosamia |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 231 Регистрация: 11.5.2005 Репутация: нет Всего: нет |
toolbar имеется в каждой вьюшке тк вьюшки абсолютно идентичны
добавляю спиннер кодом: UIActivityIndicatorView *activityView = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray]; self.iPadSpinner = activityView; [activityView startAnimating]; activityView.hidesWhenStopped = YES; UIBarButtonItem *item = [[UIBarButtonItem alloc] initWithCustomView:activityView]; [toolBarItems addObject:item]; В случае с detail2 в prepareForSegue вызываю метод который выполняет добавление спинера те перед тем как загрузить детейл2 вызываю метод проверял - метод вызывается и проперти iPadSpinner не нулевое Есть подозрение что тк метод вызван из prepareforsegue то действие происходит в детейл1 а не детейл2 Однако не уверен как сделать так чтобы точно знать что вызвано будет после сегвея, вариант с viewDidAppear мне не нравится как-то Пробовал в детейл2 добавить контрол спиннер однако почему-то он на детейл2 не отображается когда прога работает Пробовал заменить на детейл2 спиннер на свитч - ради теста, свитч отображается а спиннер нет! Хрень какая-то Добавлено через 8 минут и 32 секунды Короче добавил этот код в ViewDidLoad и оказалось что я был прав - в prepareForSegue он вызывался для детейл1 сейчас он вызывается и для детейл2 вроде стало работать но нет уверенности что это правильный подход |
|||
|
||||
| Maksys |
|
|||
|
Future Splasher ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1289 Регистрация: 15.6.2005 Где: Екатеринбург Репутация: нет Всего: 17 |
Мне кажется сигвей вызывается не для кого-то, а по индентификатору, а там уже видно кто его вызвал и для кого. Но я могу ошибаться. |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | iOS | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |