Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/119.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 十进制键盘的键盘定位_Ios_Localization_Keyboard_Swift4_French - Fatal编程技术网

Ios 十进制键盘的键盘定位

Ios 十进制键盘的键盘定位,ios,localization,keyboard,swift4,french,Ios,Localization,Keyboard,Swift4,French,我正在尝试下面的键盘本地化代码,它在Swift3中工作。 我已从以下链接获取此代码:- 但Swift 4中给出了以下错误 a) let language=type.getKeyboardLanguage() 对于这一行,它给出的错误是:-Expression type'(\u)->\ u0在没有更多上下文的情况下是不明确的 b) 在以下代码的开关箱中 switch self { case .one: return "en" case .t

我正在尝试下面的键盘本地化代码,它在Swift3中工作。 我已从以下链接获取此代码:-

但Swift 4中给出了以下错误

a)
let language=type.getKeyboardLanguage()
对于这一行,它给出的错误是:-
Expression type'(\u)->\ u0在没有更多上下文的情况下是不明确的

b) 在以下代码的开关箱中

switch self {
        case .one:
            return "en"
        case .two:
            return "ru"
        case .three:
            return ""
        case .four:
            return ""
        }
它给出错误,因为
模式无法匹配开关中案例的“ViewController”类型的值

override var textInputMode: UITextInputMode? {


        let language = type.getKeyboardLanguage()
        if language.isEmpty {
            return super.textInputMode

        } else {
            for tim in UITextInputMode.activeInputModes {
                if tim.primaryLanguage!.contains(language) {
                    return tim
                }
            }
            return super.textInputMode
        }

    }
    func getKeyboardLanguage() -> String {
        switch self {
        case .one:
            return "en"
        case .two:
            return "ru"
        case .three:
            return ""
        case .four:
            return ""
        }

    }

您只需要定义一个期望函数返回的类型

let language: SomeTypeHere = type.getKeyboardLanguage() 

干杯

输入错误。我尝试了以下行:-let language:String=type.getKeyboardLanguage(),但它仍然给出了错误,因为表达式类型“()->”在没有更多上下文的情况下是不明确的。然后需要检查定义类型的位置。getKeyboardLanguage()函数。您可能有一些泛型导致它在Swift4中不起作用