0

我正在尝试使 textView 框架随着文本的累积而水平缩放。我正在使用代码打击来尝试实现这一点。框架按预期垂直缩放,但大小似乎被水平锁定。

 [myTextView setFrame:CGRectMake(myTextView.frame.origin.x, myTextView.frame.origin.y, myTextView.contentSize.width, myTextView.contentSize.height)];

如果有人想看看,这是项目(27K)。

谢谢阅读。

4

2 回答 2

1

您的答案在notes-app

于 2012-08-31T12:26:29.973 回答
1

在 .h 文件中实现 UITextView 委托:

@interface ViewController : UIViewController<UITextViewDelegate>

如果 yourTextView 从 xib 添加,则将委托与文件所有者绑定,否则在 ViewDidLoad 添加此行:

yourTextView.delegate = self;

根据您的要求使用 textView 的委托:

- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
{
   CGSize maximumSize = CGSizeMake(2000,40); //specify height of textView  and maximum width for text to fit in height of textView as u want text horizontally
   CGSize *txtSize = [textView.text sizeWithFont:[UIFont fontWithName:@"Arial" size:16] constrainedToSize:maximumSize lineBreakMode:UILineBreakModeCharacterWrap]; //calulate size of text by specifying font here
   //Add UIViewAnimation here if needed
   [textView setFrame:CGRectMake(textView.frame.origin.x,textView.frame.origin.y,txtSize.width+10,txtSize.height+10)]; // change accordingly
   return YES;
}
于 2012-08-31T12:35:42.497 回答