gpt4 book ai didi

ios - 超链接 + 单击 NSAttributedString 上的“点赞”按钮

转载 作者:行者123 更新时间:2023-11-29 01:23:07 28 4
gpt4 key购买 nike

我有一个用户名变量和一个消息字符串,例如“喜欢你的帖子”,为了能够将其转换为一个字符串,我将它们组合在一个 NSMutableAttributedString 中。因为这很容易,所以我是

let username = notification["username"].string
let notificationBody = notification["body"].string

let notificationString = NSMutableAttributedString(string: "\(username!) \(notificationBody!)")
notificationString.addAttributes([NSForegroundColorAttributeName: UIColor.blackColor()], range: NSMakeRange(0, (username?.characters.count)!))
cell.notificationLabel.attributedText = notificationString

为文本着色按预期工作,但是,我希望能够单击用户名并同时实现单击的颜色效果(如单击按钮)。这就是我的意思:

没有点击:enter image description here

点击: enter image description here并转向另一个 VC。


我实际上用我绝对不喜欢的原始 hack 实现了我想要实现的目标。我所做的是,首先我在用户名上添加了一个额外的按钮并设置了背景颜色:清晰的颜色。如果用户名的宽度恰好与 Storyboard - 单元格中按钮的宽度匹配,那么在视觉上看起来不错。否则,它看起来有问题。

“用户名”文本上的额外按钮层:enter image description here


实现我想要实现的目标的实用方法是什么?我是否应该根据用户名字符数更改每个单元格的透明按钮的宽度?因此,如果对于 4-6 个单词,x 宽度;如果 8-10 个字,y 宽度?

还有比这更好的方法吗?

最佳答案

我会更改布局以包含一个包含用户名的按钮和一个包含正文的标签,而不是只有一个标签。这样按钮将始终与用户名大小相同。

关于ios - 超链接 + 单击 NSAttributedString 上的“点赞”按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34360261/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com