Html парсер под ios

Рейтинг: 0Ответов: 1Опубликовано: 12.03.2015

Вот скачал данный парсер, начал тестировать, и всё бы хорошо, но когда нажимаю на новость, то во view detail на весь экран горит надпись <Tutorial: 0x7b8...>, причём вторая часть надписи меняется в зависимости от новости.

В чём может быть косяк (просто, судя по комментариям, у всех всё работает)? Использую sdk 8.1.

Ответы

▲ 1Принят

в чём может быть косяк (просто, судя по комментариям, у всех всё работает)

В отсутсвии косяка. Без косяков проги вообще не работают.

UPD
Отрефакторил чутка, найдите отличия: вот мой вариант.

UPD1

Изучив работу классов, у меня вызвало подозрения строка:

self.detailDescriptionLabel.text = [self.detailItem description];

так как свойство description стандартное и ни чего кроме, как область памяти по умолчанию особо то и не показывает. Так как само совойство self.detailItem имеет тип id,

@property (strong, nonatomic) id detailItem;

то есть чуть ли не корневой объект объектов, вызвало подозрения: "А что автор хотел вообще тут ввывести?". Ну пошел смотреть класс MasterViewController и увидел что он кастит эти данные, которые затем отправляет в DetailViewController, в NSDate O_o:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    if (!self.detailViewController) {
        self.detailViewController = [[DetailViewController alloc] initWithNibName:@"DetailViewController" bundle:nil];
    }
    NSDate *object = [_objects objectAtIndex:indexPath.row]; // Внимание сюда
    self.detailViewController.detailItem = object;
    [self.navigationController pushViewController:self.detailViewController animated:YES];
}

Это вызвало недоумения еще больше, и я пошел искать:"Откудаж там берется такой много функциональный объект?", дошел до инициализации массива _object и нашел это:

NSMutableArray *newTutorials = [[NSMutableArray alloc] initWithCapacity:0];
    for (TFHppleElement *element in tutorialsNodes) {
        // 5
       Tutorial *tutorial = [[Tutorial alloc] init];// Внимание сюда
        [newTutorials addObject:tutorial];

        // 6
        tutorial.title = [[element firstChild] content];

        // 7
        tutorial.url = [element objectForKey:@"href"];
    }

    // 8
    _objects = newTutorials;
    [self.tableView reloadData];

Ну, а дальше все стало ясно, и в общем дальше сами... работа время деньги... сами понимаете. ;)