这听起来很小,但我被困住了:(
我正在使用TSMessage快速收到错误"额外参数' image'在电话"。怎么了?
func showActionNotification(title:String?, message:String?, viewcontroller:UIViewController, actionTitle:NSString, action:(()->Void)) -> Void {
var image:UIImage! = UIImage(named: "Sample.png")
TSMessage.showNotificationInViewController(viewcontroller,
title: title, subtitle: message, image: image,
type: TSMessageNotificationType.Message,
duration: TSMessageNotificationDuration.Automatic,
callback: nil, buttonTitle: actionTitle, buttonCallback: action,
atPosition: TSMessageNotificationPosition.Top, canBeDismissedByUser: true)
}
由于
答案 0 :(得分:2)
我刚遇到同样的问题。 Xcode给出的错误与实际问题完全无关。它与image
参数无关。
事实证明,TSMessageNotificationDuration
枚举不会将属性强制转换为NSTimeInterval。我尝试了以下但是没有用:
TSMessageNotificationDuration.Automatic as NSTimeInterval
Xcode抱怨'TSMessageNotificationDuration'无法转换为'NSTimeInterval'
相反,我想看看这些枚举相当于什么。就我而言,我使用TSMessageNotificationDuration.Endless
,相当于-1。
所以我将代码更改为以下代码:
var endless:NSTimeInterval = -1
TSMessage.showNotificationInViewController(viewController,
title: title,
subtitle: subtitle,
image:image,
type: TSMessageNotificationType.Message,
duration: endless,
callback: { () -> Void in },
buttonTitle: "",
buttonCallback: { () -> Void in },
atPosition: TSMessageNotificationPosition.Top,
canBeDismisedByUser: false)
TSMessageNotificationDuration.Automatic
枚举等于0.
我希望这会有所帮助。
答案 1 :(得分:0)
您正在传递标题和消息作为选项 - 如果TSMessage(目标c?)不想要可能导致问题的选项。