在iOS中设备语言为阿拉伯语时显示英文键盘和类型

时间:2015-07-06 06:35:05

标签: ios xcode keyboard

我正在做一个有两种语言的应用, 我在做的是, 在第一页上,我有几个字段将从用户获取输入。 其中包含一个用户的电子邮件ID。

当我将设备语言更改为阿拉伯语时,所有文本字段我输入的名称如姓名和姓氏等都是阿拉伯语, 但对于电子邮件ID,我需要键盘并输入英文。

为了改变这个特定领域的键盘类型,我尝试了很多但是失败了。

欢迎任何意见和指导。 提前谢谢。

1 个答案:

答案 0 :(得分:4)

创建一个局部变量

BOOL isEmailField;

实施电子邮件文本字段“编辑确实开始:”和“编辑完成结束:”,如下所示:

- (IBAction)emailTextFieldBeginEdit:(id)sender {

    isEmailField = YES;
}

- (IBAction)emailTextFieldEndEdit:(id)sender {
    isEmailField = NO;
}

现在实现方法:

 - (UITextInputMode *) textInputMode

像这样使用:

- (UITextInputMode *) textInputMode {

    if(isEmailField) {
        for (UITextInputMode *inputMode in [UITextInputMode activeInputModes]) {

            if([inputMode.primaryLanguage isEqualToString:@"en-US"]) {
                return inputMode;
            }
        }
    }
    return [super textInputMode];
}

希望这会有效,请告诉我你的意见。