现在的位置: 首页 > 综合 > 正文

iphone–设置UITextView内边距

2013年10月22日 ⁄ 综合 ⁄ 共 784字 ⁄ 字号 评论关闭

当我们因为一些需求将UITextView当成UILabel使用(为了使用UITextView自带的复制,粘贴,选择功能),这时我们只需要禁用UITextView的几个属性就行了

        textView.editable = NO;//不可编辑
        textView.scrollEnabled = NO;//不可滚动

这样就ok;

但是当我们在实际运用时,想计算文字的大小并设置UITextView的显示大小

    UIFont *font = [UIFont systemFontOfSize:14.0f]; //指定字符串的大小
    
    [textView setText:content];

    CGSize textSize = [content sizeWithFont:font constrainedToSize:CGSizeMake(200, 2000) lineBreakMode:UILineBreakModeCharacterWrap];
    
    CGRect articleframe = [articleLabel frame];
    textView.size.height = textSize.height ;
//    textView.size.width = textSize.width;
    [textView setFrame:articleframe];

但是通过这种方法在UILabel上使用没有任何问题,但是在UITextView是却不行,文字总是显示不全,不管你主动写多了高度给它,当文字不一样了双会显示不全或显示高度过多;

可以用下面的方法试一下

        [self.articleLabel setContentInset:UIEdgeInsetsMake(-10, -5, -15, -5)];//设置UITextView的内边距
        [self.articleLabel setTextAlignment:NSTextAlignmentLeft];//并设置左对齐

抱歉!评论已关闭.