首页 > 解决方案 > UITextView 类,从 Objective-C 到 Swift 的 intrinsicContentSize 问题

问题描述

我一直在Objective-C中工作,我使用Swift的时间很短。我在Objective-CUITextView中有一个课程,我正在研究该方法。intrinsicContentSize


Objective-C

-(CGSize)intrinsicContentSize {
    if ([self.text length]) return self.contentSize;
    else return CGSizeZero;
}

现在我正在尝试将我的 Objective-C 代码转换为 Swift,但我遇到了这个函数的问题......

 override var intrinsicContentSize: CGSize {
         if text.lenght() {
              return contentSize
          } else {
              return CGSize.zero
          }
    }

text.lenght似乎给了我一个

类型错误的值 '(UITextRange) -> String? 没有成员“长度”

标签: iosobjective-cswiftuitextviewintrinsic-content-size

解决方案


尝试这个

override var intrinsicContentSize: CGSize {
    return text.isEmpty ? .zero : contentSize
}

内在内容大小取决于文本长度(字符串中的字符数),我们返回所需的大小


推荐阅读