iOS提醒应用程序如何允许将单词换行到TableView中的下一行?

iOS提醒应用程序如何允许将单词换行到TableView中的下一行?,ios,uitextfield,Ios,Uitextfield,我正在iPhone上使用iOS提醒应用程序,我注意到在tableview中,它允许您输入可以换行的文本,并继续输入提醒文本。我注意到单元格的高度会发生变化,以适应所提供的提醒文本的大小。我的问题是我知道这可以用UILabel完成,但是你不能在UILabel中编辑和输入文本,对吗?所以它一定是一个UITextField,但我认为UITextField不允许单词换行?我以为它只是在一条线上继续收缩?那么我在这里遗漏了什么呢?它很可能使用了一个允许多行文本的UITextView。然后,当文本换行到下一

我正在iPhone上使用iOS提醒应用程序,我注意到在tableview中,它允许您输入可以换行的文本,并继续输入提醒文本。我注意到单元格的高度会发生变化,以适应所提供的提醒文本的大小。我的问题是我知道这可以用UILabel完成,但是你不能在UILabel中编辑和输入文本,对吗?所以它一定是一个UITextField,但我认为UITextField不允许单词换行?我以为它只是在一条线上继续收缩?那么我在这里遗漏了什么呢?

它很可能使用了一个允许多行文本的
UITextView
。然后,当文本换行到下一行时,您可以通过查看
UITextView

的委托方法来更改
UITableViewCell
的高度。如果您尝试了UITextView,它会自动换行,但要自动调整表格单元格高度,可能必须使用textViewDelegate didReplaceString方法

// goes inside the UITextView didReplaceString method
// assumes expectedTextSize is a CGSize struct (like this CGSize expectedTextSize)
expectedTextSize = [myTextView.text sizeWithFont:[UIFont fontWithName:"Arial" size:12] constrainedToSize:CGSizeMake(200, 999999) lineBreakMode:UILineBreakModeWordWrap];

// then in your tableView:heightForRow: table view delegate method
return expectedTextSize.height;

我在文档中没有看到任何内容,这表明UITextField可以有多行文本,但谢谢,我想我错过了它?我想你可能是对的。非常感谢你。这已经在这里测试过了。