TTTAttributedLabel обнаружение ссылки не работает с использованием раскадровки

Я пытаюсь интегрировать TTTAttributedLabel в UITableViewCell. Это просто простая интеграция, и все, что я хотел, это заменить старую UILabel на TTTAttributedLabel. Вот что я сделал.

  1. Перейдите в раскадровку и выберите UILabel внутри пользовательского UITableViewCell и измените его класс на TTTAttributedLabel
  2. Вернитесь к подклассу UITableViewController, включите TTTAttributedLabel.h и измените (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPathкак это:

    static NSString *CellIdentifier = @"Post";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if(cell == nil)
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
                                      reuseIdentifier:CellIdentifier];
    
    TTTAttributedLabel *label = (TTTAttributedLabel *)[cell viewWithTag:801];
    label.text = [self.post valueForKey:@"content"];
    label.enabledTextCheckingTypes = NSTextCheckingTypeLink;
    label.userInteractionEnabled = YES;
    label.delegate = self;
    return cell;
    

Но обнаружение ссылки не работает. Это просто текст. Как я могу отладить то, что я делаю неправильно?

1 ответ

Я думаю, что вам нужно установить свой текст после enabledTextCheckingTypes = NSTextCheckingTypeLink

label.enabledTextCheckingTypes = NSTextCheckingTypeLink;
label.userInteractionEnabled = YES;
label.delegate = self;
label.text = [self.post valueForKey:@"content"];
Другие вопросы по тегам