IOS - 输入类型 - 文本字段

  • 为什么是输入类型?

    键盘输入类型帮助我们从用户那里获得所需的输入。它会删除不需要的键并包含需要的键。我们可以使用 UITextField 的键盘属性设置用户可以提供的输入类型。
    • 例如:文本字段。键盘类型 = UIKeyboardTypeDefault

    键盘输入类型

    序号 输入类型和描述
    1
    UIKeyboardTypeASCIICapable
    键盘包括所有标准 ASCII 字符。
    2
    UIKeyboardTypeNumbersAndPunctuation
    一旦显示,键盘就会显示数字和标点符号。
    3
    UIKeyboardTypeURL
    键盘针对 URL 输入进行了优化。
    4
    UIKeyboardTypeNumberPad
    键盘用于 PIN 输入并显示数字键盘。
    5
    UIKeyboardTypePhonePad
    键盘针对输入电话号码进行了优化。
    6
    UIKeyboardTypeNamePhonePad
    键盘用于输入姓名或电话号码。
    7
    UIKeyboardTypeEmailAddress
    键盘针对输入电子邮件地址进行了优化。
    8
    UIKeyboardTypeDecimalPad
    键盘用于输入十进制数。
    9
    UIKeyboardTypeTwitter
    键盘针对 Twitter 进行了优化,带有 @ 和 # 符号。

    添加自定义方法 addTextFieldWithDifferentKeyboard

    
    -(void) addTextFieldWithDifferentKeyboard {
       UITextField *textField1= [[UITextField alloc]initWithFrame: 
       CGRectMake(20, 50, 280, 30)];
       textField1.delegate = self;
       textField1.borderStyle = UITextBorderStyleRoundedRect;
       textField1.placeholder = @"Default Keyboard";
       [self.view addSubview:textField1];
       UITextField *textField2 = [[UITextField alloc]initWithFrame:
       CGRectMake(20, 100, 280, 30)];
       textField2.delegate = self;
       textField2.borderStyle = UITextBorderStyleRoundedRect;
       textField2.keyboardType = UIKeyboardTypeASCIICapable;
       textField2.placeholder = @"ASCII keyboard";
       [self.view addSubview:textField2];
       UITextField *textField3 = [[UITextField alloc]initWithFrame:
       CGRectMake(20, 150, 280, 30)];
       textField3.delegate = self;
       textField3.borderStyle = UITextBorderStyleRoundedRect;
       textField3.keyboardType = UIKeyboardTypePhonePad;
       textField3.placeholder = @"Phone pad keyboard";
       [self.view addSubview:textField3];
       UITextField *textField4 = [[UITextField alloc]initWithFrame:
       CGRectMake(20, 200, 280, 30)];
       textField4.delegate = self;
       textField4.borderStyle = UITextBorderStyleRoundedRect;
       textField4.keyboardType = UIKeyboardTypeDecimalPad;
       textField4.placeholder = @"Decimal pad keyboard";
       [self.view addSubview:textField4];
       UITextField *textField5= [[UITextField alloc]initWithFrame:
       CGRectMake(20, 250, 280, 30)];
       textField5.delegate = self;
       textField5.borderStyle = UITextBorderStyleRoundedRect;
       textField5.keyboardType = UIKeyboardTypeEmailAddress;
       textField5.placeholder = @"Email keyboard";
       [self.view addSubview:textField5];
       UITextField *textField6= [[UITextField alloc]initWithFrame:
       CGRectMake(20, 300, 280, 30)];
       textField6.delegate = self;
       textField6.borderStyle = UITextBorderStyleRoundedRect;
       textField6.keyboardType = UIKeyboardTypeURL;
       textField6.placeholder = @"URL keyboard";
       [self.view addSubview:textField6];
    }
    
    更新 ViewController.m 中的 viewDidLoad 如下 -
    
    (void)viewDidLoad {
       [super viewDidLoad];
       //The custom method to create textfield with different keyboard input
       [self addTextFieldWithDifferentKeyboard];
       //Do any additional setup after loading the view, typically from a nib
    }
    

    输出

    当我们运行应用程序时,我们将获得以下输出 -
    iOS 教程
    我们将看到在选择每个文本字段时显示不同的键盘。