iOS学习

如何用Xcode的原生键盘实现特殊功能

2016-11-16  本文已影响91人  为心而狂

在iOS开发中,对键盘的要求时常出现。很多时候原生态键盘满足不了一些特殊要求,为了满足boss们的需求,只能自定义了。但是自定义常常很麻烦,对我来说,不到不得已我是不会用自定义的。这里我列举一种,希望可以开拓你们的脑洞。

eg:比如我们实现UITextFiled文本框这样一种功能:只允许输入大写字母和数字,不管你在键盘上点击的是小写字母还是大写字母,要自动转换成大写字母,并且屏蔽掉除数字和字母以外的形式。就如同生活中的航班号。看下效果图


Untitled.gif

看下实现过程


示意图1.png
示意图2.png 这里的宏定义和代码是:
#define kAlphaNumPhone  
@"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"//只允许输入字母和数字
NSCharacterSet *cs = [[NSCharacterSet characterSetWithCharactersInString:kAlphaNumPhone] invertedSet];
NSString *filtered = [[string componentsSeparatedByCharactersInSet:cs] componentsJoinedByString:@""];
return [string isEqualToString:filtered];
示意图3.png

这就OK了,阔以根据这样的思路,实现一些其他需求。

上一篇 下一篇

猜你喜欢

热点阅读