use*_*383 12 objective-c uitableview ios
如何添加徽章UITableViewCell
,如下所示:
替代文字http://img17.imageshack.us/img17/9974/img0001ac9.png
我应该简单地添加一个带有文本和标签的子视图吗?
这是@ POF答案的快速增强.我们不需要那么多的子视图,我们可以使用数学来支持N位,而不仅仅是1-3位:
func setDiscountBadge(count: Int) {
let size: CGFloat = 26
let digits = CGFloat( count("\(number)") ) // digits in the label
let width = max(size, 0.7 * size * digits) // perfect circle is smallest allowed
let badge = UILabel(frame: CGRectMake(0, 0, width, size))
badge.text = "\(number)"
badge.layer.cornerRadius = size / 2
badge.layer.masksToBounds = true
badge.textAlignment = .Center
badge.textColor = UIColor.whiteColor()
badge.backgroundColor = cfg.UIColors.brand
YOURCELL.accessoryView = badge // !! change this line
}
Run Code Online (Sandbox Code Playgroud)
结果(我使用的是品牌颜色,但你的颜色可以是任何颜色):
归档时间: |
|
查看次数: |
11685 次 |
最近记录: |