Преобразование строки кода для совместимости с раскадровками в XCode 4.3 - PullRequest
0 голосов
/ 28 марта 2012

Для проекта IOS я использую MWFeedParser для создания программы чтения RSS. Я заполняю табличное представление каналом RSS и теперь хочу создать этот переход, используя раскадровку.

Я не могу заставить его работать. Обычно я бы использовал didSelectRowAtIndexPath, чтобы выдвинуть подробный вид.

Помощь очень ценится.

Спасибо

Это то, что я обычно делаю:

 #pragma mark -
 #pragma mark Table view delegate

    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {

        // Show detail
        DetailTableViewController *detail = [[DetailTableViewController alloc] initWithStyle:UITableViewStyleGrouped];
        detail.item = (MWFeedItem *)[itemsToDisplay objectAtIndex:indexPath.row];
        [self.navigationController pushViewController:detail animated:YES];
        [detail release];

        // Deselect
        [self.tableView deselectRowAtIndexPath:indexPath animated:YES];

    }

Я связал свои взгляды и ход в Stroyboard. Мой идентификатор для рассматриваемого вопроса: ShowSelectedFeed

1 Ответ

0 голосов
/ 28 марта 2012

Вы можете создать новое приложение Master-Detail-Application и использовать его в качестве справочного материала.Он использует именно этот шаблон.

Если вы создали переход в раскадровке, вы хотите использовать prepareForSegue:sender: для передачи ваших данных.Примерно так:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([[segue identifier] isEqualToString:@"showDetail"]) {
        NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];
        NSDate *object = [_objects objectAtIndex:indexPath.row];
        [[segue destinationViewController] setDetailItem:object];
    }
}

Это прямо из шаблона Master-Detail-Application.Отрегулируйте его под свои нужды

...