【问题标题】:UITextView - strange text clippingUITextView - 奇怪的文本剪辑
【发布时间】:2013-04-20 08:01:25
【问题描述】:

我已将UITextView 放入UITableViewCell 并调整其大小。我可以看到大小已正确设置(通过设置文本视图的背景颜色)。 . .但是文本视图中的文本有奇怪的剪辑。

我怎样才能避免这种情况?

更新:

  • 我最终将UITextView 放置在全新视图控制器中的空视图上,仍然注意到了这个问题。
  • 下一步是创建一个新项目并开始逐项添加内容。
  • 从单个视图控制器开始并使用UITextView 进行视图 - 好的。
  • 添加了带有方便视图放置方法的库 - 已损坏。

【问题讨论】:

  • 我会尝试查看 textView 的 contentSize 属性,看起来框架是正确的,但 contentSize 不是
  • @Eugene - 谢谢。忘了提到我尝试将内容大小设置为非常大的东西。不要以为是这样。 .我将添加一些大小的调试语句。

标签: ios iphone objective-c uitableview uitextview


【解决方案1】:

这个问题是由一个为 UIView 放置添加了一些便利方法的库引起的。例如,它包含如下方法:

  • view.x = someFloat
  • view.width = someWidth

我怀疑 UITextView 使用的内部方法与命名空间冲突,我不确定是哪个方法导致了问题。

【讨论】:

    【解决方案2】:

    您似乎没有调整表格视图单元格的高度。实施

    tableView:heightForRowAtIndexPath:
    

    按照 Eugene 的建议 - 您的内容大小调整也可能是负责任的。请记住,contentSize 只有在将文本视图添加到其父视图后才会建立。也许你不应该自己设置contentSize

    【讨论】:

    • 谢谢,但我确实进行了调整(看看标签和文本视图是如何整齐地包含在单元格中的?)。 . .我正在开发一个表单库(iBureaucrat),该方法会询问该字段的首选高度。
    【解决方案3】:

    在这一行:

    _textView.frame = CGRectMake(self.x + 20, _label.y + _label.height, self.width - _label.x -14, 66);
    

    您将高度设置为 66。我看不出您应该在哪里将其设置为单元格高度。

    不应该是这样的:

    _textView.frame = CGRectMake(self.x + 20, _label.y + _label.height, self.width - _label.x -14, self.height - (_label.y+_label.height));
    

    【讨论】:

    • 当然应该更加动态,但是现在,当我试图隔离问题时,我知道单元格的高度是 100,这为 66 的高度提供了足够的空间。 . .您可以看到标签的边缘(紫色)刚好在单元格边界的上方。
    • 对不起,我没有得到关于背景的部分。现在我明白了。您是否尝试将 contentInset 设置为 0?
    • 谢谢。 .是的,我尝试将 contentInsets 设置为所有不同类型的值,但仍然没有运气。 .
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-08
    • 1970-01-01
    • 2014-11-03
    • 2022-08-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多