您的位置:首页 > 产品设计 > UI/UE

iphone软键盘

2012-05-16 11:46 74 查看
当文本输入时, 文本框有几中选择用于辅助输入:

 

textField.clearButtonMode = UITextFieldViewModeWhileEditing;
 

Java代码 

typedef enum {  

    UITextFieldViewModeNever, //clear button 永远不出现  

    UITextFieldViewModeWhileEditing, //编辑的时候出现  

    UITextFieldViewModeUnlessEditing, //未编辑的时候出现  

    UITextFieldViewModeAlways //永远都出现  

} UITextFieldViewMode;  

 

 

弹出的键盘类型也可以辅助快速输入:

 

textField.keyboardType = UIKeyboardTypeAlphabet;
 

Java代码 

typedef enum {  

    UIKeyboardTypeDefault,                // Default type for the current input method.  

    UIKeyboardTypeASCIICapable,           // Displays a keyboard which can enter ASCII characters, non-ASCII keyboards remain active  

    UIKeyboardTypeNumbersAndPunctuation,  // Numbers and assorted punctuation.  

    UIKeyboardTypeURL,                    // A type optimized for URL entry (shows . / .com prominently).  

    UIKeyboardTypeNumberPad,              // A number pad (0-9). Suitable for PIN entry.  

    UIKeyboardTypePhonePad,               // A phone pad (1-9, *, 0, #, with letters under the numbers).  

    UIKeyboardTypeNamePhonePad,           // A type optimized for entering a person's name or phone number.  

    UIKeyboardTypeEmailAddress,           // A type optimized for multiple email address entry (shows space @ . prominently).  

  

    UIKeyboardTypeAlphabet = UIKeyboardTypeASCIICapable, // Deprecated  

  

} UIKeyboardType;  

 
键盘的呈现风格:
textField..keyboardAppearance = UIKeyboardAppearanceAlert;
 

Java代码 

typedef enum {  

    UIKeyboardAppearanceDefault,          // Default apperance for the current input method.  

    UIKeyboardAppearanceAlert,            // Appearance suitable for use in "alert" scenarios.  

} UIKeyboardAppearance;  

 
键盘对输入字母的控制:
 
textField.autocapitalizationType = UITextAutocapitalizationTypeAllCharacters;
 

Java代码 

typedef enum {  

    UITextAutocapitalizationTypeNone, //什么也不做  

    UITextAutocapitalizationTypeWords, //单词首字母大写  

    UITextAutocapitalizationTypeSentences, //句子首字母大些  

    UITextAutocapitalizationTypeAllCharacters, //所有字母大些  

} UITextAutocapitalizationType;  

 
键盘对输入字母自动纠正
textField.autocorrectionType = UITextAutocorrectionTypeYes;
 

Java代码 

typedef enum {  

    UITextAutocorrectionTypeDefault,  

    UITextAutocorrectionTypeNo,  

    UITextAutocorrectionTypeYes,  

} UITextAutocorrectionType;  

 
 
确认键的类型
textField.returnKeyType = UIReturnKeyDone;
 

Java代码 

typedef enum {  

    UIReturnKeyDefault,  

    UIReturnKeyGo,  

    UIReturnKeyGoogle,  

    UIReturnKeyJoin,  

    UIReturnKeyNext,  

    UIReturnKeyRoute,  

    UIReturnKeySearch,  

    UIReturnKeySend,  

    UIReturnKeyYahoo,  

    UIReturnKeyDone,  

    UIReturnKeyEmergencyCall,  

} UIReturnKeyType;  

 
 
最后一个技巧,也是网上收集,键盘透明以及增加一个按键的应用:
 [[NSNotificationCenter defaultCenter] addObserver:self

Java代码 

                                             selector:@selector(keyboardWillShow:)   

                                                 name:UIKeyboardWillShowNotification   

                                               object:nil];  

  

  

  

--------------------  

- (void)keyboardWillShow:(NSNotification *)note {    

    // create custom button  

    UIButton *doneButton = [UIButton buttonWithType:UIButtonTypeCustom];  

    doneButton.frame = CGRectMake(0, 163, 106, 53);  

    doneButton.adjustsImageWhenHighlighted = NO;  

    [doneButton setImage:[UIImage imageNamed:@"DoneUp.png"] forState:UIControlStateNormal];  

    [doneButton setImage:[UIImage imageNamed:@"DoneDown.png"] forState:UIControlStateHighlighted];  

    [doneButton addTarget:self action:@selector(doneButton:) forControlEvents:UIControlEventTouchUpInside];  

  

    // locate keyboard view  

    UIWindow* tempWindow = [[[UIApplication sharedApplication] windows] objectAtIndex:1];  

    UIView* keyboard;  

    for(int i=0; i<[tempWindow.subviews count]; i++) {  

        keyboard = [tempWindow.subviews objectAtIndex:i];  

        // keyboard view found; add the custom button to it  

        if([[keyboard description] hasPrefix:@"<UIKeyboard"] == YES)  

            [keyboard addSubview:doneButton];  

    }  

}
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息