以下是我的代码,错误显示在withOptions:block
中 KNSemiModalOptionKeys.pushParentBack : NSNumber(value: false),
KNSemiModalOptionKeys.animationDuration : NSNumber(value: 1.0),
KNSemiModalOptionKeys.shadowOpacity : NSNumber(value: 0.3)
我正在尝试在我的项目中实现THCalendarDatePicker日历。
@IBAction func dateButtonTouched(sender: AnyObject) {
datePicker.date = curDate as Date!
datePicker.setDateHasItemsCallback({(date: Date!) -> Bool in
let tmp = (arc4random() % 30) + 1
return tmp % 5 == 0
})
presentSemiViewController(datePicker, withOptions: [
KNSemiModalOptionKeys.pushParentBack : NSNumber(value: false),
KNSemiModalOptionKeys.animationDuration : NSNumber(value: 1.0),
KNSemiModalOptionKeys.shadowOpacity : NSNumber(value: 0.3)
])
}
答案 0 :(得分:0)
我解决了这个错误,下面是我的代码:
@IBAction func dateButtonTouched(sender: AnyObject) {
datePicker.date = curDate as Date!
datePicker.setDateHasItemsCallback({(date: Date!) -> Bool in
let tmp = (arc4random() % 30) + 1
return tmp % 5 == 0
})
presentSemiViewController(datePicker, withOptions: [
convertCfTypeToString(cfValue: KNSemiModalOptionKeys.shadowOpacity) as String! : 0.3 as Float,
convertCfTypeToString(cfValue: KNSemiModalOptionKeys.animationDuration) as String! : 1.0 as Float,
convertCfTypeToString(cfValue: KNSemiModalOptionKeys.pushParentBack) as String! : false as Bool
])
}
/* https://vandadnp.wordpress.com/2014/07/07/swift-convert-unmanaged-to-string/ */
func convertCfTypeToString(cfValue: Unmanaged<NSString>!) -> String?{
/* Coded by Vandad Nahavandipoor */
let value = Unmanaged<CFString>.fromOpaque(
cfValue.toOpaque()).takeUnretainedValue() as CFString
if CFGetTypeID(value) == CFStringGetTypeID(){
return value as String
} else {
return nil
}
}