UITableViewRowAction 在 Swift 中自定义标题字体大小
Posted
技术标签:
【中文标题】UITableViewRowAction 在 Swift 中自定义标题字体大小【英文标题】:UITableViewRowAction customise title font size in Swift 【发布时间】:2016-05-13 04:38:10 【问题描述】:我的 tableViewCell 中有一个编辑和删除 tableViewRowAction。目前我正在使用内置的表情符号作为我的标题,但它太小了。如何让字体变大?
我知道我们只能在 tableViewRowAction 中自定义有限数量的东西。但是有没有办法让标题字体变大?
我检查了其他线程,其中大部分都使用了:
UIButton.appearance().setAttributedTitle(NSAttributedString(string: "Your Button", attributes: attributes), forState: .Normal)
当然具有确定字体大小的 set 属性。但是,这会影响所有按钮,这并不好。
非常感谢任何帮助!谢谢!
【问题讨论】:
【参考方案1】:您将其设置为 UIButton
,因此它是为所有 UIButton 对象设置的。
您可以为特定的按钮对象设置它,例如,
let myButton: UIButton = UIButton() //your button here
let attributedStr: NSAttributedString = NSAttributedString()
myButton.setAttributedTitle(attributedStr, forState: .Normal)
更新:
您可以将标题设置为属性字符串。
查看Apple documentation 并参考this answer 了解更多详情
希望这会有所帮助:)
【讨论】:
您好,感谢您的回复。 (: 但是,UITableViewRowAction 不是 UIButton 类型。所以我不能使用 UIButton 路由来设置标题大小。 谢谢!我了解,但是如何将 String 类型的标题设置为 NSAttributedString?它给了我一个错误。这是我的代码:let attributes = [NSFontAttributeName: UIFont.systemFontOfSize(20)] as Dictionary! let attributedStringRemove = NSAttributedString(string: "✖︎", attributes: attributes)
,然后在此处将属性字符串添加到标题中:let removeAction = UITableViewRowAction(style: .Default, title: attributedStringRemove)
不客气!!是的,这意味着您必须使用默认字体大小。如果不允许设置属性文本,则不能隐式更改标题。我建议你使用delete
或remove
这样的文字,而不是x
,这样效果会更大。以上是关于UITableViewRowAction 在 Swift 中自定义标题字体大小的主要内容,如果未能解决你的问题,请参考以下文章
iOS 11 中的 UITableViewRowAction 太宽
如何在 UITableViewRowAction 中添加图像?