ios - 导致错误的 Swift 3 更新

标签 ios iphone swift swift3

我更新到 swift 3.0 后出现这两个错误,请帮忙。下面是代码和图片

我在 self.blockfinish 处遇到错误

var blockFinish: ((_ selectedTags: Array<Tag>, _ unSelectedTags: Array<Tag>) -> ())!

func finishTagController() {
    var selected: Array<Tag> = Array()
    var unSelected: Array<Tag> = Array()

    for currentTag in tags {
        if currentTag.isSelected {
            selected.append(currentTag)
        }
        else {
            unSelected.append(currentTag)
        }
    }
    self.dismissViewControllerAnimated(true, completion: { () -> Void in
        self.blockFinish(selectedTags: selected, unSelectedTags: unSelected)
    })
}

这里我得到一个错误 let ("addTagView.textEdit.text.stringByTrimmingCharactersInSet(spaceSet)")

func createNewTag() {
    let spaceSet = NSCharacterSet.whitespaces
    let contentTag = addTagView.textEdit.text.stringByTrimmingCharactersInSet(spaceSet)
    if strlen(contentTag) > 0 {
        let newTag = Tag(isSelected: false, isLocked: false, textContent: contentTag)
        tags.insert(newTag, atIndex: tags.count)
        collectionTag.reloadData()            
    }
    cancelEditTag()
}

Error image

最佳答案

字符串修剪方法的签名在 Swift 3.0 中发生了变化。 Here is the new method:

func trimmingCharacters(in set: CharacterSet) -> String

所以代替:

let contentTag = addTagView.textEdit.text.stringByTrimmingCharactersInSet(spaceSet)

你会这样做:

let contentTag = addTagView.textEdit.text.trimmingCharacters(in: spaceSet)

编辑: blockFinish 在调用站点不采用任何参数名称。

替换:

self.blockFinish(selectedTags: selected, unSelectedTags: unSelected)

与:

self.blockFinish(selected, unSelected)

关于ios - 导致错误的 Swift 3 更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40050785/

相关文章:

ios - 从解析的 XML 将数据加载到 TableView

ios 6弹出窗口中的多个页面

ios - 任何人都可以解释如何正确添加约束到导航栏按钮或者这段代码有什么问题吗?

高度约束发生变化时的 iOS Autolayout 问题

iOS 7 过渡 - XCode 5 - Interface Builder - Three20

ios - 解析iOS PFFile下载顺序

ios - 在 UISplitViewController 应用程序中从 DetailViewController 获取 MasterViewController

ios - 我可以更改应用程序的名称吗?问题是我的帐户中已经存在同名的应用程序

ios - 在 Swift 3 中显示 Facebook 事件

ios - 当动画已经使用 swift 发生时,如何加速它?