ios - UITextView, sizeToFit is acting weirdly -


i'm trying create simple chat app practice. use uitableview setup chatroom , configured cell storyboard. put simple uitextview message container, odd reason sizes weird , make no sense. here's code cell:

- (uitableviewcell *)tableview:(uitableview *)tableview cellforrowatindexpath:(nsindexpath *)indexpath {     chatroomtableviewcell *cell = (chatroomtableviewcell *)[self.tableview dequeuereusablecellwithidentifier:@"messagecell" forindexpath:indexpath];     message *cellmessage = [self.messages objectatindex:indexpath.row];      cell.usernamelabel.text = cellmessage.username;     cell.messagelabel.text = cellmessage.messagetext;     nsdateformatter *formatter = [[nsdateformatter alloc] init];     [formatter setdateformat:@"hh:mm a"];     [cell.messagelabel.layer setcornerradius:2.0f];      if (cellmessage.messagetype == sent_message) {         nsstring *datelabelstring = [nsstring stringwithformat:@"sent: %@", [formatter stringfromdate:cellmessage.relevantdate]];         cell.relevantdatelabel.text = datelabelstring;         cell.usernamelabel.textalignment = nstextalignmentright;         cell.relevantdatelabel.textalignment = nstextalignmentright;         [cell.messagelabel setbackgroundcolor:self.currenttheme.sentmessagecolor];         [cell.messagelabel.layer setbordercolor:self.currenttheme.sentmessagecolor.cgcolor];         [cell.messagelabel settextalignment:nstextalignmentright];         [cell.messagelabel sizetofit];         [cell.messagelabel setframe:cgrectmake(self.view.frame.size.width - 20 - cell.messagelabel.frame.size.width - 10, cell.messagelabel.frame.origin.y, cell.messagelabel.frame.size.width + 10, cell.messagelabel.frame.size.height + 5)];     } else {         nsstring *datelabelstring = [nsstring stringwithformat:@"received: %@", [formatter stringfromdate:cellmessage.relevantdate]];         cell.relevantdatelabel.text = datelabelstring;         cell.usernamelabel.textalignment = nstextalignmentleft;         cell.relevantdatelabel.textalignment = nstextalignmentleft;         if (cellmessage.messagetype == event_message) {             [cell.messagelabel setbackgroundcolor:self.currenttheme.eventmessagecolor];         } else {             [cell.messagelabel setbackgroundcolor:self.currenttheme.receivedmessagecolor];         }         [cell.messagelabel sizetofit];     }     return cell; } 

this result get: enter image description here familiar problem? know reason?

edit: tried using uilabel , worked fine, uilabel doesn't have functionality need.

the problem sizetofit doesn't do, uitextview, want done. can make uitextview sized contents, that's not how it.

do search on stack overflow, you'll find lots of info. example: how size uitextview content?


Comments

Popular posts from this blog

android - Get AccessToken using signpost OAuth without opening a browser (Two legged Oauth) -

org.mockito.exceptions.misusing.InvalidUseOfMatchersException: mockito -

google shop client API returns 400 bad request error while adding an item -