gpt4 book ai didi

ios - 从左侧和右侧对齐具有 "\n"的标签

转载 作者:行者123 更新时间:2023-11-28 08:13:00 28 4
gpt4 key购买 nike

我有一个这样的标签

label.text = "A    34\nB    11\nC    4\nD    3"

看起来像这样

A      34
B 11
C 5
D 3

有没有办法让标签左右对齐,看起来像这样:

A      34
B 11
C 5
D 3

最佳答案

`您可以制作一个行类(自定义 UIView)并让每个“列”元素(单独的 UILabel)由用于填充它的数据设置。然后你可以有一个表类,这样你就可以使用最长的字符串并调整每一列的位置。这种方法会给你很多控制权,但会带来额外的工作。

或者使用带制表位的 NSAttributedString。

let myText = "A\t34\nB\t11\nC\t5\nD\t3"
let paragraphStyle = NSMutableParagraphStyle()
paragraphStyle.tabStops = [NSTextTab(textAlignment: NSTextAlignment.Left, location: 150, options: [:])]
paragraphStyle.headIndent = 150
label.attributedText = NSAttributedString(string: text, attributes:[NSParagraphStyleAttributeName: paragraphStyle])

您可以计算循环中最长的字符串宽度以确定 headIndent 应该是什么。但是,这不允许像您的示例中那样右对齐右列。你会得到类似的东西:

A        34
B 11
C 5
D 3

关于ios - 从左侧和右侧对齐具有 "\n"的标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43251607/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com