我有自定义视图:
var menu = pickerMenu(frame: view.frame, menuItems: *NSArray here*, andDelegate: self)`
我想传递给menuItems:
的所有日历标题来自:
var calendarsArray: [EKCalendar] = eStore.calendarsForEntityType(EKEntityTypeReminder) as [EKCalendar]
由于用户自然可以添加和删除日历,而且数字可以更改,我无法做到:
var items = [
MenuItem (text: calendarsArray[0].title),
MenuItem (text: calendarsArray[1].title),
MenuItem (text: calendarsArray[2].title),
...
]
如何以编程方式从title
获取所有calendarsArray
并将其传递给menuItems:
?
我有循环但不知道如何将结果传递给menuItems
。
for (var i:Int=0; i<calendarsArray.count; i++) {
// calendarsArray[i].title;
println("Title:\(calendarsArray[i].title)")
}
答案 0 :(得分:2)
let items = calendarsArray.map { MenuItem(text: $0.title) }
应为MenuItem
中的每个条目获取calendarsArray
个数组。然后将其传递给pickerMenu
。