【发布时间】:2018-03-13 17:43:24
【问题描述】:
我有一个标签数组和一个字母数组,我想按字母顺序打印标签中的每个字母。
我对字母数组进行了排序,但我不知道如何对标签数组进行排序。
class ViewController: UIViewController {
@IBOutlet var labels: [UILabel]!
override func viewDidLoad() {
super.viewDidLoad()
wordToLabel()
}
let letters = ["B", "E", "C", "D", "A"]
func wordToLabel() {
for index in labels.indices {
let label = labels[index]
let sortedLetters = letters.sorted { $0 < $1 }
label.text = sortedLetters[index]
print(sortedLetters)
}
}
}
我可以不使用UITableView吗?
【问题讨论】:
-
为什么要对标签对象进行排序?如果您按顺序为它们分配排序的文本,它们应该显示为已排序。除了每次通过循环对相同的字母进行排序之外,您当前的解决方案有什么问题?
-
@PhillipMills 目前这些字母未排序
-
也许,将标签添加到标签,然后通过标签对其进行排序会有所帮助?
-
您视图中的标签是否以正确的顺序出现在
labels数组中?如果没有,简单的解决方法是在情节提要中更正它们。 -
@PhillipMills 你是对的,问题来自尚未排序的标签数组,我该如何排序?
标签: ios arrays swift sorting uilabel