jueves, 28 de mayo de 2015

NSMutableAttributedString Aplicar subrayado a las palabras de un texto. Apply NSMutableAttributedString underlined the words of a text.

    // Texto completo del documento
    NSString *textoDelDocumento = @"Los vehículos como el camión corresponden a una evolución del coche y en un paso intermedio la furgoneta.";
   
    // Palabras a las que queremos aplicar el subrayado
    NSArray *palabras = [[NSArray alloc] initWithObjects:@"camión",@"coche",@"furgoneta", nil];
    // Iniciamos NSMutableAttributedString con el texto del documento
    NSMutableAttributedString *attrString = [[NSMutableAttributedString alloc] initWithString:textoDelDocumento];
    
    // APLICAMOS EL SUBRAYADO A LAS PALABRAS QUE QUEREMOS DESTACAR
    for (NSString *palabra in palabras) {
      NSRange range = [textoDelDocumento rangeOfString:palabra];
      [attrString addAttribute:NSUnderlineStyleAttributeName value:[NSNumber numberWithInt:NSUnderlineStyleSingle] range:range];
    }

    [attrString addAttribute:NSBackgroundColorAttributeName  value:[UIColor cyanColorrange:NSMakeRange(0, [attrString length])];
    
    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(10, 20, 300, 80)];
    [label setAttributedText:attrString];
    [label setNumberOfLines:0];
    [label sizeToFit];

    [[self view] addSubview:label];

No hay comentarios:

Publicar un comentario