jueves, 28 de abril de 2016

iOS: Resizing UITextView / UILabel

I implemented it with UILabel

1) First I set a max number of lines (Programatically by setting "numberOfLines" or in IB setting the "Lines" attribute)
2) Create a "READ MORE" button and set "readMoreClicked" as its action when touched up inside
3)

long numberOfLines = [self _numberOfLinesInNotes];
            
            if (numberOfLines <= <max_lines_you_want> ) {
                self. textLabel.numberOfLines = numberOfLines;
                self.readMoreButton.hidden = YES;
                
            } else {
                self.textLabel.numberOfLines = <max_lines_you_want>;
                self.readMoreButton.hidden = NO;

            }

4) 

#pragma mark - IBActions
- (IBAction)readMoreClicked:(id)sender
{
    if ([self.readMoreButton.titleLabel.text isEqualToString:@"READ MORE"]) {
        [self.readMoreButton setTitle:@"READ LESS" forState:UIControlStateNormal];
        self.noteLabel.numberOfLines = 0;
        
    } else {
        [self.readMoreButton setTitle:@"READ MORE" forState:UIControlStateNormal];
        self.noteLabel.numberOfLines = <max_lines_you_want>;
    }
}

No hay comentarios:

Publicar un comentario