'[(UIButton)]'没有名为'enumerate'的成员,任何人都可以指导我这个错误吗?

时间:2015-08-20 07:37:22

标签: ios swift enumerate

for (index, button) in ratingButtons.enumerate() <--getting my error here
                {
                    buttonFrame.origin.x = CGFloat(index * (44 + 5))
                    button.frame = buttonFrame
                }
            }

我也尝试了枚举(ratingButtons)但它没有在数组中添加按钮

3 个答案:

答案 0 :(得分:1)

取出.enumerate()它应该可以工作,也必须将(index, button)更改为button,因为该数组只包含UIButtons,而不包含索引和按钮的元组。如果需要索引,则必须手动计算数组的迭代次数,否则设置正常的非快速枚举for循环并手动获取索引处的按钮

答案 1 :(得分:0)

以下代码对我有用

var idx = 0
var buttonFrame = CGRect(x: 0, y: 0, width: 44, height: 44)
for button in ratingButtons {
    buttonFrame.origin.x = CGFloat(idx * (44 + 5))
    button.frame = buttonFrame
    idx = idx + 1
}

答案 2 :(得分:-1)

枚举(ratingButtons)替换 ratingButtons.enumerate()    这是枚举

的正确方法
    for (index, button) in enumerate(ratingButtons)
    {

        buttonFrame.origin.x = CGFloat(index * (buttonSize + 5))
        button.frame = buttonFrame
    }
例如

enumerate()函数,它返回项目的索引及其值

import Cocoa

var strarr = [String]()

strarr.append("Mango")
strarr.append("Apple")
strarr += ["Banana"]

for (index, item) in enumerate(strarr) {
   println("Value at index = \(index) is \(item)")
}

指数= 0时的值是芒果
索引= 1的值是Apple
指数= 2的值是Banana