文本在UITextView框边界之外滚动

时间:2011-09-30 08:37:54

标签: iphone objective-c ios uitextview

我有一个UITextView,里面有一些文字。问题是文本滚动到UITextView框的边界之外。 (UITextView是不可编辑的。)

这是代码和我试图解决此问题的内容:

  - (void)viewDidLoad {

        textBG.contentInset = UIEdgeInsetsZero;

    //  textBG.layer.masksToBounds = NO;
        textBG.layer.cornerRadius = 10.0;
        textBG.layer.borderWidth = 0.0;
        [textBG setClipsToBounds:YES];

    [super viewDidLoad];
}

- (void)textViewDidBeginEditing:(UITextView*)textView
{

textBG.contentInset = UIEdgeInsetsZero;    
 [textBG setClipsToBounds:YES];   
}

- (void) shouldChangeTextInRange:(UITextView*)textView {

    textBG.contentInset = UIEdgeInsetsZero;    
    [textBG setClipsToBounds:YES];

}

感谢您的帮助

enter image description here

4 个答案:

答案 0 :(得分:16)

在textView委托方法中编写,如textViewDidBeginEditing

textBG.contentInset = UIEdgeInsetsZero;

在viewDidload

[textBG setClipsToBounds:YES];

答案 1 :(得分:2)

尝试更改TextView的XIB,如下所示:enter image description here

答案 2 :(得分:0)

我遇到了同样的问题,所以我追查了源代码......这是因为在添加阴影的同时,你会打扰它的 masksToBounds 属性。因此,在添加更多文本时,它会溢出。我找到的简单解决方案是在添加阴影后编写这个简单的行。

[self.myTextView setClipsToBounds:YES];

通常应该在 viewDidLoad 方法中,但请记住在 应用阴影之后仅编写此行。

感谢您阅读本文。

答案 3 :(得分:0)

只需输入一行代码即可解决问题。

yourTextView.clipsToBounds = true