Text not displaying on UILabel when the text is too large.

ios, iphone, objective-c, uilabel

Solution

`UILabel` will render all its text at once into a backing buffer. iOS devices only have a limited amount of graphics memory to do this work, so it will fail once the graphics data goes above a certain size.

For large amounts of text you should use Core Text or something like `UITextView` which renders its text on-demand much more efficiently.

Problem

I have a text (Story of a book). I am taking UILabel to display it. But it is not showing me on view. I am using the following code: ``` CGSize labelsize; UILabel *commentsTextLabel = [[UILabel alloc] init];; [commentsTextLabel setNumberOfLines:0]; commentsTextLabel.textColor = [UIColor blackColor]; [commentsTextLabel setBackgroundColor:[UIColor clearColor]]; [commentsTextLabel setFont:[UIFont fontWithName:@"ACaslonPro-Regular"size:17]]; labelsize=[story sizeWithFont:commentsTextLabel.font constrainedToSize:CGSizeMake(280, 15000) lineBreakMode:NSLineBreakByWordWrapping]; commentsTextLabel.frame=CGRectMake(20, 200, 280, labelsize.height); commentsTextLabel.text = story;// more than 1000 lines [self.view addSubview:commentsTextLabel]; ``` When i debug my code, i found labelsize.height is coming out in my case 13145.Still it is not showing. If i descrease 15000 to 11000 , then text is showing on view with .... at last. labelsize=[story sizeWithFont:commentsTextLabel.font constrainedToSize:CGSizeMake(280, 15000) lineBreakMode:NSLineBreakByWordWrapping]; Please help me out. Thanks

Original source