我有一个问题,我会在我的iOS应用程序中多个UITextField
,但由于它不可能我使用可编辑的UITextView
,我设置了我的"占位符&#34 ;和我的财产,这是代码:
- (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
之下和之上有任何物体,所以当高度增加时它们应该移动。我该如何解决这个问题呢?
非常感谢。
答案 0 :(得分:1)
首先,禁用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;