【问题标题】:"show more/show less" button for UILabel swift 5UILabel swift 5 的“显示更多/显示更少”按钮
【发布时间】:2021-09-01 04:20:54
【问题描述】:

我试图在 tableView 单元格中为我的 UILabel 实现“显示更多/显示更少”功能。我已经尝试在网上搜索解决方案,但它们似乎都已经过时了。

标题文本应该有 2 行,如果超过,它将扩展为全文

 lazy var captionText: UILabel = {
        let lbl = UILabel()
        lbl.numberOfLines = 2
        lbl.lineBreakMode = .byWordWrapping
        return lbl
    }()

func setupUI(viewModel: FeedModel) {

        captionText.text = viewModel.postDescription
}

我希望最终结果看起来像这样:

Expandable UILabel sample

Expanded UILabel sample

【问题讨论】:

标签: ios swift uitableview uilabel uitextview


【解决方案1】:

您可以在 Swift 中尝试这个第 3 方:https://github.com/apploft/ExpandableLabel

将您的标签 UILabel 设置为 ExpandableLabel 并设置所需的属性:

yourLabel.numberOfLines = 2
yourLabel.collapsed = true
yourLabel.collapsedAttributedLink = NSAttributedString(string: "See more")
yourLabel.ellipsis = NSAttributedString(string: "...")

它有ExpandableLabelDelegate,以防你想在链接被触摸时得到通知。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-15
    • 1970-01-01
    • 1970-01-01
    • 2018-04-28
    • 2020-06-18
    相关资源
    最近更新 更多