UICollectionViewCell里面的UITextView坚持水平增长
UITextView inside UICollectionViewCell insists on growing horizontally
我的 UICollectionView 单元格中有一个 UITextView,它会根据其内容不断水平增长。我的集合视图设置为垂直滚动,单元格计算自己的大小。我希望我的文本视图根据其内容垂直增长,而不是水平增长。
这是我的单元格、文本视图及其约束:
最初,压缩阻力和拥抱有默认值,但由于它们不起作用,我将水平拥抱设置为 1000,将水平压缩设置为 250,以防止文本视图变大。好像也不行。
没有任何约束被打破,但是,我在日志中不断收到此消息:
Please check the values return by the delegate.
the behavior of the UICollectionViewFlowLayout is not defined because:
the item width must be less than the width of the UICollectionView minus the section insets left and right values.
我觉得有关系。如何将我的文本视图保持在定义的范围内并使其垂直而不是水平增长。
更新:它不只是自己增长。由于限制(并且它没有打破它们),它正在增长整个细胞。请注意,在运行时的屏幕截图中,右对齐时间指示器“2h”超出范围:
我找到了 workaround/solution。虽然我仍然不明白为什么具有所需水平拥抱优先级的文本视图会水平而不是垂直增长,但我以编程方式向我的单元格添加了一个宽度约束,等于屏幕的宽度,并且它起作用了。它强制单元格和文本视图保持其指定的宽度,并且任何内容都动态换行。
我的 UICollectionView 单元格中有一个 UITextView,它会根据其内容不断水平增长。我的集合视图设置为垂直滚动,单元格计算自己的大小。我希望我的文本视图根据其内容垂直增长,而不是水平增长。
这是我的单元格、文本视图及其约束:
最初,压缩阻力和拥抱有默认值,但由于它们不起作用,我将水平拥抱设置为 1000,将水平压缩设置为 250,以防止文本视图变大。好像也不行。
没有任何约束被打破,但是,我在日志中不断收到此消息:
Please check the values return by the delegate.
the behavior of the UICollectionViewFlowLayout is not defined because:
the item width must be less than the width of the UICollectionView minus the section insets left and right values.
我觉得有关系。如何将我的文本视图保持在定义的范围内并使其垂直而不是水平增长。
更新:它不只是自己增长。由于限制(并且它没有打破它们),它正在增长整个细胞。请注意,在运行时的屏幕截图中,右对齐时间指示器“2h”超出范围:
我找到了 workaround/solution。虽然我仍然不明白为什么具有所需水平拥抱优先级的文本视图会水平而不是垂直增长,但我以编程方式向我的单元格添加了一个宽度约束,等于屏幕的宽度,并且它起作用了。它强制单元格和文本视图保持其指定的宽度,并且任何内容都动态换行。