我有一个问题,我会在我的 iOS 应用程序中使用多个 UITextField
,但是因为不可能我使用可编辑的 UITextView
,我在其中设置了我的“占位符”和我的属性,这是代码:
- (BOOL)textViewShouldBeginEditing:(UITextView *)textView
{
NSString *presentText = self.textFieldObject.text;
if (![presentText isEqualToString:@"Message..."] && presentText != nil)
{
self.textFieldObject.textColor = [UIColor blackColor];
}
else
{
self.textFieldObject.text = @"";
self.textFieldObject.textColor = [UIColor blackColor];
}
return YES;
}
-(void)textViewDidChange:(UITextView *)textView
{
if(self.textFieldObject.text.length == 0)
{
self.textFieldObject.textColor = [UIColor colorWithRed:215.0/255.0 green:215.0/255.0 blue:215.0/255.0 alpha:1.0];
self.textFieldObject.text = @"Message...";
[self.textFieldObject resignFirstResponder];
}
}
当我编写更多文本(如 iOS 邮件应用程序或 Facebook 帖子)时,我希望 UITextView
增加其高度。
在 UITextView
的下方和上方有任何对象,因此它们会在高度增加时移动。我该如何解决这个问题?
非常感谢。
最佳答案
首先,禁用 UITextView 的滚动。
两种选择:
取消选中“在 .xib 中启用滚动”。
[TextView setScrollEnabled:NO];
创建一个 UITextView 并将其与 IBOutlet (TextView) 连接。 添加一个具有默认高度的虚拟 UITextView 高度约束,将其与 IBOutlet (TextViewHeightConstraint) 连接。 当您异步设置 UITextView 的文本时,您应该计算 UITextView 的高度并为其设置 UITextView 的高度约束。
示例代码片段:
[TextView setText:song.lyrics];
CGSize sizeThatFitsTextView = [TextView sizeThatFits:CGSizeMake(TextView.frame.size.width, MAXFLOAT)];
TextViewHeightConstraint.constant = sizeThatFitsTextView.height;
关于ios - UITextView 像 iOS 邮件应用程序一样增加高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38271650/