http://www.itstrike.cn/Question/c51c60a2-4ea9-4902-8ef9-0f14d1fcba9b.html

 

- (void)viewDidLoad {

    [super viewDidLoad];

    // Do any additional setup after loading the view, typically from a nib.

    

    UITextView * view = [[UITextView alloc]init];

    

    view.frame = CGRectMake(20, 30, [UIScreen mainScreen].bounds.size.width-40, [UIScreen mainScreen].bounds.size.height-30);

    

    view.font= [UIFont systemFontOfSize:15];

    

    view.delegate =  self;

    

    [self.view addSubview:view];

    

    view.textContainer.maximumNumberOfLines = 2;

    

    

}

- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text

{

    NSString *newText = [textView.text stringByReplacingCharactersInRange:range withString:text];

    

    NSDictionary *textAttributes = @{NSFontAttributeName : textView.font};

    

    CGFloat textWidth = CGRectGetWidth(UIEdgeInsetsInsetRect(textView.frame, textView.textContainerInset));

    textWidth -= 2.0f * textView.textContainer.lineFragmentPadding;

    CGRect boundingRect = [newText boundingRectWithSize:CGSizeMake(textWidth, 0)

                                                options:NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading

                                             attributes:textAttributes

                                                context:nil];

    

    NSUInteger numberOfLines = CGRectGetHeight(boundingRect) / textView.font.lineHeight;

    

    return newText.length <= 500 && numberOfLines <= 2;

}

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-02-15
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-02-11
  • 2022-12-23
猜你喜欢
  • 2021-09-15
  • 2021-08-06
  • 2021-12-31
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案