2012-06-07 3 views
0

У меня возникают настоящие проблемы, проходящие через NSIndexPath к моему новому виду. Вот как работает приложение:Переход NSIndexPath к новому виду?

У меня есть UIBarButtonItem в моем nab br, коснитесь этого, и вы получите всплывающее представление, это показывает кучу вещей. Мне нужно получить NSIndexPath с моего основного вида, на это представление.

У меня есть свойство для NSIndexPath в моем классе popover view, и переход popover связан в моей раскадровке.

Тогда у меня есть этот код, чтобы пройти путь индекса через просмотров:

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 
{ 
    if ([segue.identifier isEqualToString:@"statsPopover"]) 
    { 
     StatsViewController *statsVC = [segue destinationViewController]; 

     statsVC.selectedIndex = stageSelectionTable.indexPathForSelectedRow; 
    } 
} 

Однако, в то время как это вызывается, путь индекса не отсылаются между видами. Мой индексный путь в popover всегда по умолчанию, 0,0 строка и раздел.

Надеюсь, вы сможете помочь, спасибо.

+0

как вы «заполняете» 'stageSelectionTable.indexPathForSelectedRow'? – Pfitz

+0

«пока это называется» - откуда вы знаете? Если вы установите точку останова на строке, начинающуюся с 'statsVC.selectedIndex ...', что происходит? – deanWombourne

+0

Я знаю, что 'stageSelectionTable.indexPathForSelectedRow' имеет значения, которые я хочу в нем, так как я зарегистрировал его непосредственно перед отправкой его в новое представление. Я также знаю, что он вызван, потому что я установил точку останова, и он запускает эту строку. Я не понимаю, почему это значение передается. –

ответ

0

Вы говорите, что знаете, что от отладки/регистрации, что метод запущен, вызывается ваш оператор if, и stageSelectionTable.indexPathForSelectedRow имеет ожидаемое значение.

Выполнение такого рода диагностики ставит вас на правильный путь к решению вашей проблемы. Держите на нем - если вы проверите что-нибудь с NSLog или отладчиком, вы сможете найти проблему.

  • вы знаете, что statsVC является не- nil ли? Если это nil, ваше сообщение, чтобы установить selectedIndex, ничего не делает.

  • statsVC класс, которого вы ожидаете? Если, скажем, представление (таблица?) В вашем popover встроено в контроллер навигации, segue.destinationViewController будет указывать на контроллер nav, и вам нужно будет изучить его массив контроллеров дочерних представлений, чтобы найти тот, который вы ищете ,

  • Является ли какой-либо метод доступа вашим классом StatsViewController для его selectedIndex собственности, работающего справа? (Это не должно быть проблемой, если это синтезированная сбруя для сильного/свойства сохранения.)

  • В вашем StatsViewController классе, вы пытаетесь работать с selectedIndex, прежде чем она на самом деле получает набор? Установка свойства в prepareForSegue:sender:, а затем его использование в viewDidLoad должно работать нормально, но использование его в awakeFromNib не может, и использование его в методе init... определенно не будет.

Смежные вопросы