考虑 UITableViewCell ,其样式为 UITableViewCellStyleDefault ,设置为tableView:cellForRowAtIndexPath:
,渐变背景设置为tableView:willDisplayCell:forRowAtIndexPath:
。
渲染时,textLabel
会与渐变混合得很好,突出显示效果也一样。
现在,如果我们保持一切相同,但将单元格样式更改为 UITableViewCellStyleSubtitle ,该怎么办?在我的情况下,textLabel
和detailTextLabel
根本不再融合!它们具有......其他颜色。距离渐变中的颜色不太远,但它根本不会混合。将样式更改回默认值,一切都很好。
现在,我意识到我可以在clearColor
中将标签设置为...willDisplayCell...
,但我一遍又一遍地被告知,“不要这样做!不要单独留下颜色。”
也许我必须这样做才能解决?或者其他可能有什么不妥之处?线索欢迎/赞赏!
答案 0 :(得分:0)
解决方法是使用NSString的drawInRect函数。您可以使用NSString sizeWithFont:forWidth:lineBreakMode:方法来计算rect大小,然后以这种方式绘制字符串。
有关字符串大小的更多信息,请点击此处apples docs site。