看看这个UILabel
。它是中心对齐的:
现在看看这个UILabel
。虽然它在技术上是中心对齐的,但实际上看起来并不那样:
之所以看起来这是因为中心对齐将度数符号视为第三个字符,从而将其他两个向左碰撞一点。我的问题是:在对齐标签时,有没有办法忽略某些字符?
答案 0 :(得分:1)
有趣的问题。我想到的唯一解决方案是在前面填充text
字符串,以取消背面忽略的字符。
也就是说,要将@"60d"
置于中心@"60"
,请将text
设置为@" 60d"
。这适用于固定宽度字体,但除此之外只是粗略的近似。
如果您喜欢这个想法,并希望对它有所了解,那么您可以使用NSString
方法
– stringByPaddingToLength:withString:startingAtIndex:
可能与– rangeOfCharacterFromSet:
或某种此类方法一起确定要填充的空格数。
答案 1 :(得分:1)
您当然可以测量文本字符串并计算自己的定位,而不是在更大的字段中使用文本对齐。
假设您不想这样做,我想到的另一个想法是显示字符串“°60°”,第一个字符的样式为不透明度0且没有阴影。
我没有进行iOS开发,所以我不知道它们有多实用。