iOS 等宽十六进制值
iOS monospaced hexadecimal values
我喜欢 San Francisco 字体。并希望尽可能使用它。我有一个显示一系列标签的 table 视图,其中每个标签都是 6 个十六进制数字,例如
F0:1A:2B
12:CE:88
问题是他们没有很好地排列。我可以为字体启用等宽数字属性,但这不考虑字符 ABCDEF。我试过单一的等宽字体 (Menlo),它看起来很糟糕而且不合适。
我正在尝试为每个字符制作 8 个小标签(6 个十六进制数字加上两个 : 分隔符),这看起来像是一个大杂烩。有没有别的办法。我想知道是否有办法用 AttributedString
来使十六进制数字的宽度相同?
如果要使用按比例间隔的字体,则必须在适当的位置绘制字符。否则,找一个你喜欢的等宽字体。
为了完整起见,我应该 post 在接受@AaronBratcher 确认后我最终做了什么。
首先,我为以下元素创建了 5 个单独的 UILabel:
leftTwoDigits-leftSeparator-centerTwoDigits-rightSeparator-rightTwoDigits
我使用约束来约束它们的所有基线,并且每个基线之间的水平间距为 0。分隔符标签被简单地设置为 :
和正常颜色。 xxxTwoDigits 标签被赋予字符串 AA
。 A
不是最宽的字符 C is
。但是 A
就在附近。 C
太宽,A
足够宽。这些标签的颜色设置为 clear
,所以实际上并没有显示出来。
然后又添加了 6 个 UILabel。同样的基线。前两个被限制在 leftTwoDigits 的前导和尾部,并被限制在宽度上匹配。对其他 4 个单元格重复此操作。使一切居中。并用各个数字分别填充它们。
我喜欢 San Francisco 字体。并希望尽可能使用它。我有一个显示一系列标签的 table 视图,其中每个标签都是 6 个十六进制数字,例如
F0:1A:2B
12:CE:88
问题是他们没有很好地排列。我可以为字体启用等宽数字属性,但这不考虑字符 ABCDEF。我试过单一的等宽字体 (Menlo),它看起来很糟糕而且不合适。
我正在尝试为每个字符制作 8 个小标签(6 个十六进制数字加上两个 : 分隔符),这看起来像是一个大杂烩。有没有别的办法。我想知道是否有办法用 AttributedString
来使十六进制数字的宽度相同?
如果要使用按比例间隔的字体,则必须在适当的位置绘制字符。否则,找一个你喜欢的等宽字体。
为了完整起见,我应该 post 在接受@AaronBratcher 确认后我最终做了什么。
首先,我为以下元素创建了 5 个单独的 UILabel:
leftTwoDigits-leftSeparator-centerTwoDigits-rightSeparator-rightTwoDigits
我使用约束来约束它们的所有基线,并且每个基线之间的水平间距为 0。分隔符标签被简单地设置为 :
和正常颜色。 xxxTwoDigits 标签被赋予字符串 AA
。 A
不是最宽的字符 C is
。但是 A
就在附近。 C
太宽,A
足够宽。这些标签的颜色设置为 clear
,所以实际上并没有显示出来。
然后又添加了 6 个 UILabel。同样的基线。前两个被限制在 leftTwoDigits 的前导和尾部,并被限制在宽度上匹配。对其他 4 个单元格重复此操作。使一切居中。并用各个数字分别填充它们。