无法将 uibutton 类型的值转换为预期的参数字符串

Posted

技术标签:

【中文标题】无法将 uibutton 类型的值转换为预期的参数字符串【英文标题】:cannot convert value of type uibutton to expected argument string 【发布时间】:2016-09-13 07:37:00 【问题描述】:

我一直在尝试按照 youtube 上的指南在我的 tableview 单元格中创建一个共享按钮,但是我遇到了一个对我来说毫无意义的错误 “无法将 (VideoViewController) -> (UIButton)->() 类型的值转换为预期的参数“字符串” 在这行代码:

cell.shareButton.addTarget(self, action: Selector(VideoViewController.shareAction(_:)), forControlEvents: .TouchUpInside)

这是我的按钮代码

@IBAction func shareAction(sender: UIButton)

    let post = timelineComponent.content[sender.tag]
    let titleString = post.labelTitle

    let firstActivityItem = "\(titleString)"

    let activityViewController : UIActivityViewController = UIActivityViewController(activityItems: [firstActivityItem], applicationActivities: nil)

    self.presentViewController(activityViewController, animated: true, completion: nil)


【问题讨论】:

改成这个:cell.shareButton.addTarget(self, action: #selector(shareAction(_:)), forControlEvents: .TouchUpInside) 【参考方案1】:

这样试试,应该可以的

cell.shareButton.addTarget(self, action: #selector(VideoViewController.shareAction(_:)) , forControlEvents: .TouchUpInside)

【讨论】:

以上是关于无法将 uibutton 类型的值转换为预期的参数字符串的主要内容,如果未能解决你的问题,请参考以下文章

无法将类型“()”的值转换为预期的参数类型“字符串”

无法将“字符串”类型的值转换为预期的参数类型 [任何]

Swift:无法将“NSDate”类型的值转换为预期的参数类型“NSDateComponents”

无法将“()”类型的值转换为预期的参数类型“(() -> Void)?”在 swiftui

无法将类型 '(Any) -> ()' 的值转换为预期的参数类型 '(_) -> _'

iOS-无法将“字符串”类型的值转换为预期的参数类型“数据”