不符合协议错误

时间:2017-01-12 06:15:58

标签: ios swift error-handling

我正在制作股票申请,我的主视图控制器中存在问题。错误消息是类型“ViewController”不符合协议'AutocompleteDelegate'。如果有人知道如何解决这个问题,将不胜感激。

这是我的代码。

extension ViewController:AutocompleteDelegate{
func autoCompleteTextField() -> UITextField {
    return self.textInput
}
func autoCompleteThreshold(textField: UITextField) -> Int {
    return 2
}

func autoCompleteHeight() -> CGFloat {
    return CGRectGetHeight(self.view.frame) / 3.0
}


func didSelectItem(item: AutocompletableOption) {
    var outPut=""
    for char in item.text.characters {
        if (char >= "A" && char <= "z"){
            outPut.append(char)
        }
        else{
            break
        }
    }

    self.textInput.text = outPut
}

}

1 个答案:

答案 0 :(得分:1)

我认为您缺少以下方法的实现

func autoCompleteItemsForSearchTerm(term: String) -> [AutocompletableOption]

任何符合AutocompleteDelegate的符合类型都需要具有以下实例方法

func autoCompleteTextField() -> UITextField

func autoCompleteThreshold(textField: UITextField) -> Int

func autoCompleteItemsForSearchTerm(term: String) -> [AutocompletableOption]

func autoCompleteHeight() -> CGFloat

func didSelectItem(item: AutocompletableOption) -> Void

您已经实现了其他4种方法,只需要实现autoCompleteItemsForSearchTerm