2014-02-21 2 views
1

У меня есть UICollectionView, содержащий кнопки, которые ссылаются на другие контроллеры представлений. Каков наилучший способ показать разные контроллеры при нажатии кнопок?Xcode UICollectionView - выберите элемент и отправьте несколько UIViewControllers

Кажется, я могу создать массив, содержащий различные идентификаторы контроллера вида, и использовать метод performSegueWithIdentifier. Я застрял в ссылке на элементы массива в этом методе.

Если мой массив имеет имя MY_ARRAY, могу ли я ссылаться на его индексы в этом методе? Или всегда требуется строка?

[self performSegueWithIdentifier:MY_ARRAY sender:self]; 
+0

возможно дубликат [Как использовать SEGUE передать отснятой фотографии] (http://stackoverflow.com/questions/17740424/how- в использовании-непосредственно перейти к миновать-принимать-фото) –

ответ

1

Вы можете помечать UIButtons и использовать свои теги как индексы в массиве с идентификаторами SEGUE.

Ваш MY_ARRAY будет содержать идентификаторы segue. Пример:

MY_ARRAY = @[@"SegueID1", @"SegueID2", @"SegueID3"] 

Тогда в IBAction вашей кнопки

- (IBAction)buttonTapped:(id)sender 
{ 
    UIButton *button = (UIButton *)sender; 

    NSUInteger index = button.tag; 

    [self performSegueWithIdentifier:MY_ARRAY[index] sender:self]; 
} 
Смежные вопросы