Iphone 我在滚动视图上使用UITextView…我希望在其中写入内容时它能够自动展开。。。。。。
随着内容的增加,我想增加文本字段的大小 此代码不适用于我Iphone 我在滚动视图上使用UITextView…我希望在其中写入内容时它能够自动展开。。。。。。,iphone,Iphone,随着内容的增加,我想增加文本字段的大小 此代码不适用于我 感谢GrowingTextView是一款可重复使用的iOS组件,完全满足您的需要,您可以在GitHub上找到它 我希望这能有所帮助。您需要将代码分成两个片段,然后将它们放在适当的位置,然后代码就可以工作了 片段1(在我的测试中,我将此片段放在viewDidLoad中): 确保上面的片段运行,并且您的文本视图显示在屏幕上,然后运行第二个片段。如果文本视图未显示在屏幕中,则contentView未初始化,高度未定义 片段2(在我的测试中,我将
感谢GrowingTextView是一款可重复使用的iOS组件,完全满足您的需要,您可以在GitHub上找到它
我希望这能有所帮助。您需要将代码分成两个片段,然后将它们放在适当的位置,然后代码就可以工作了 片段1(在我的测试中,我将此片段放在viewDidLoad中): 确保上面的片段运行,并且您的文本视图显示在屏幕上,然后运行第二个片段。如果文本视图未显示在屏幕中,则contentView未初始化,高度未定义 片段2(在我的测试中,我将此片段放在
viewDidAppear
)中:
祝你好运 显示不可编辑的文本不需要使用
UITextView
。除此之外,您还可以使用UILabel,并可以在运行时找到标签的高度。每次内容在UILabel
的大小设置框中发生相应变化时
使用此选项可以在运行时找出标签的高度
CGRect frame = textViewBusiness.frame;
frame.size.height = textViewBusiness.contentSize.height;
textViewBusiness.frame = frame;
此方法每次都会返回可变高度的内容
现在将此高度设置为您的UILabel
- (CGFloat) heightOfTextLabel:(NSString *) contentText
{
CGSize constraint = CGSizeMake(268,4000);
CGSize size = [contentText sizeWithFont:[UIFont fontWithName:@"Arial" size: 17.0] constrainedToSize:constraint lineBreakMode:UILineBreakModeWordWrap];
return size.height;
}
CGRect frame = textViewBusiness.frame;
frame.size.height = textViewBusiness.contentSize.height;
textViewBusiness.frame = frame;
- (CGFloat) heightOfTextLabel:(NSString *) contentText
{
CGSize constraint = CGSizeMake(268,4000);
CGSize size = [contentText sizeWithFont:[UIFont fontWithName:@"Arial" size: 17.0] constrainedToSize:constraint lineBreakMode:UILineBreakModeWordWrap];
return size.height;
}
CGFloat heightOfLabel = [self heightOfTextLabel:strMyBusiness];
UILabel* textToShowLabel = [[UILabel alloc] initWithFrame:CGRectMake(25,332,268,heightOfLabel)];
textToShowLabel.text=strMyBusiness;
textToShowLabel.font = [UIFont fontWithName:@"Arial" size: 17.0];
textToShowLabel.layer.borderWidth = 2.0f;
textToShowLabel.layer.borderColor = [[UIColor grayColor] CGColor];
textToShowLabel.backgroundColor = [UIColor clearColor];
[textToShowLabel setTextColor:[UIColor blackColor]];
[self.scrollView addSubview: textToShowLabel];