【问题标题】:Use a for loop to set the titles for buttons使用 for 循环设置按钮的标题
【发布时间】:2021-03-27 16:43:32
【问题描述】:

我想使用 for 循环来设置按钮的标题。我目前正在做的事情不起作用。我认为使用 indexPath.row 是有效的,但它没有。该代码也不引人注目。我认为有一个简单的解决方案来实现数组。

         var line = UIButton()
var pen = UIButton()
var graph = UIButton()
var save = UIButton()
var nxt = UIButton()

        let btnTitles = ["line","pen","graph","save","next"]
    var increase = 0.1
    for b in [line, pen, graph,save,nxt] {

        b.setTitle(btnTitles(IndexPath.row), for: .normal)
    }
    

【问题讨论】:

  • 什么叫按钮? IBOutletUIButton 对象? UIButton 您以编程方式创建的对象?我在您的代码中没有看到它。
  • 我添加了一些东西
  • 让按钮:[UIButtons] = [line, pen, graph, save, nxt] let btnTitles = ["line","pen","graph","save","next"] for i in 0..
  • 你能把它写成答案吗?我无法复制它

标签: arrays swift for-loop button indexpath


【解决方案1】:
let line = UIButton()
let pen = UIButton()
let graph = UIButton()
let save = UIButton()
let nxt = UIButton()

let buttons: [UIButton] = [line, pen, graph, save, nxt]
let btnTitles = ["line", "pen", "graph", "save", "next"]
for i in 0..<buttons.count {
    let button = buttons[i]
    let title = btnTitles[i]
    button.setTitle(title, for: .normal)
}

// probing code //
buttons.forEach {
    if let title = $0.titleLabel?.text {
       print(title)
    }
}

打印如下。

线 笔 图形 保存 下一个

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-09-23
    • 2020-11-29
    • 1970-01-01
    • 2016-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-14
    相关资源
    最近更新 更多