【问题标题】:Add constraints to UITextView change contentOffset向 UITextView 添加约束更改 contentOffset
【发布时间】:2015-02-19 22:13:10
【问题描述】:

我已经为文本视图设置了约束,如下图所示:

但正如您在模拟器上看到的,对于 ARTIST NAME 标签下的文本视图,contentOffset 是不同的。似乎文本视图首先尝试从底部显示文本,然后从顶部显示:

我想尝试在不使用任何代码的情况下解决此问题,但我添加了这个将文本视图滚动回顶部的方法:

- (void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:animated];

    [self.theTextView scrollRectToVisible:CGRectMake(0, 0, 1, 1) animated:NO];
}

当我在[self.theTextView scrollRectToVisible:CGRectMake(0,0,1,1) animated:NO]行之前调试代码并打印出文本视图时,文本视图的contentOffset为0, 144.5

(lldb) po self.theTextView
<UITextView: 0x7d26ac00; frame = (3 423; 153 90); text = 'Lorem ipsum dolor sit er ...'; clipsToBounds = YES; autoresize = RM+BM; gestureRecognizers = <NSArray: 0x7bbbdf30>; layer = <CALayer: 0x7bbbd540>; contentOffset: {0, 144.5}; contentSize: {153, 243}>

[self.theTextView scrollRectToVisible:CGRectMake(0,0,1,1) animated:NO] 之后 contentOffset 为 0, 0

(lldb) po self.theTextView
<UITextView: 0x7d26ac00; frame = (3 423; 153 90); text = 'Lorem ipsum dolor sit er ...'; clipsToBounds = YES; autoresize = RM+BM; gestureRecognizers = <NSArray: 0x7bbbdf30>; layer = <CALayer: 0x7bbbd540>; contentOffset: {0, 0}; contentSize: {153, 243}>

但我可以弄清楚为什么约束会带来一些内容偏移问题。以及为什么在开始文本被转移。在没有任何约束的情况下,文本视图将“Lorem ipsum”显示为第一行,但在有约束的情况下,它显示“nulla pariatur...”,正如您在上图中看到的完整可见线一样,上面的行完全被切断了。

【问题讨论】:

  • 我也有同样的问题。你解决了吗?我将 textview 的 setContentOffset 设置为 0,0 但没有任何区别。如果您已解决此问题,请告诉我。
  • @iOS 嘿,伙计,这对我来说是个老问题,所以我有一些技巧让它工作,但它对我来说以一种奇怪的方式工作。如你所知 UITextView 是一个 UIScrollView 孩子。因此,当您需要向上滚动内容时,您可以使用所有需要的方法将内容滚动到顶部,就像您对滚动视图所做的那样。我记得我已经创建了 UITextView 实例,并且在 viewDidLoad 中我以编程方式向上滚动了我的文本视图。但老实说,也许还有其他一些漂亮的解决方案可以避免这个文本转换问题。
  • 谢谢 Alexander,我刚刚解决了 :)
  • @iOS 耶,没问题)

标签: ios8 uitextview uistoryboard autolayout


【解决方案1】:

如果 UIView 和 viewDidLayoutSubview 广告在 layoutSubviews 中,则以下行:

[textview setContentOffset:CGPointMake(0,0)];

这对我有用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-06
    • 2016-01-17
    • 1970-01-01
    • 1970-01-01
    • 2015-05-06
    • 2016-11-18
    相关资源
    最近更新 更多