一般情况下,如果不对*号做任何处理,在展示的时候,是偏向上展示的,如下图所示:

文本框文字怎么垂直居中(符号在文本框内垂直居中显示)(1)

为了实现***和其他文本内容垂直方向居中显示,可以使用富文本处理一下,处理后的效果如下图所示:

文本框文字怎么垂直居中(符号在文本框内垂直居中显示)(2)

guard value.contains("***") == false else { let range = NSRange(location: 0, length: 3) digitalAttributes = [.font: UIFont.semiboldOfSize(15), .baselineOffset: -4] as [NSAttributedString.Key : Any] targetAttribute.addAttributes(digitalAttributes, range: range) return targetAttribute }

其中.baselineOffset是NSAttributedString的属性,通常叫它基础偏移量,就是通过设置.baselineOffset来实现***垂直方向居中显示的

key:.baselineOffset

value:包含浮点数的NSNumber对象

基础偏移量:正值向上偏移,负值向下偏移,默认0(不偏移)

,