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];
}
}
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];
}
}
相关文章推荐
- iPhone界面上文本框UITextField的软键盘隐藏(取消第一响应)和移动键盘下面的内容
- h5键盘遮挡输入框问题 、模仿微信输入框失去焦点时隐藏iphone的软键盘和聚焦时出现输入框
- iphone的软键盘 及 软键盘增加一个 done 按钮
- 代码实现点击背景图片关闭软键盘 iphone
- h5键盘遮挡输入框问题 、模仿微信输入框失去焦点时隐藏iphone的软键盘和聚焦时出现输入框
- iPhone 中打开或关闭软键盘时调整 UIScrollView 的大小
- storyboard隐藏iphone软键盘
- iphone 自定义软键盘的一种笨拙方法
- iphone 中打开或关闭软键盘时调整 UIScrollView 的大小
- Ophone基本赶上了iPhone
- iphone UIScrollView缩放
- 新打开acitivyt时,EditText焦点自动带出软键盘问题解决方法总结(转)
- iphone开发生成不规则的形状
- iPhone Development 101: Objective-C: Objective-C: Custom URL Schemes
- iPhoneX又尴尬了!用户上飞机找不到关机键 空姐也犯难
- iphone 开发文章
- iPhone开发之UIScrollView滚动问题
- iPhone 开发过程中的一些小技术的总结
- 新书出版:《iPhone&iPad企业移动应用开发秘籍》
- iPhone指纹识别功能插件,利用指纹实现登陆等功能