ios--uitextfield动态限制输入的字数(解决方式)
2024-08-22 13:08:25
1、定义一个事件:
-(IBAction)limitLength:(UITextField *)sender
{
bool isChinese;//推断当前输入法是否是中文
if ([[[UITextInputMode currentInputMode] primaryLanguage] isEqualToString: @"en-US"]) {
isChinese = false;
}
else
{
isChinese = true;
} if(sender == self.txtName) {
// 8位
NSString *str = [[self.txtName text] stringByReplacingOccurrencesOfString:@" " withString:@""];
if (isChinese) { //中文输入法下
UITextRange *selectedRange = [self.txtName markedTextRange];
//获取高亮部分
UITextPosition *position = [self.txtName positionFromPosition:selectedRange.start offset:0];
// 没有高亮选择的字,则对已输入的文字进行字数统计和限制
if (!position) {
NSLog(@"汉字");
if ( str.length>=9) {
NSString *strNew = [NSString stringWithString:str];
[self.txtName setText:[strNew substringToIndex:8]];
}
}
else
{
NSLog(@"输入的英文还没有转化为汉字的状态"); }
}else{
NSLog(@"str=%@; 本次长度=%d",str,[str length]);
if ([str length]>=9) {
NSString *strNew = [NSString stringWithString:str];
[self.txtName setText:[strNew substringToIndex:8]];
}
}
}
}
2、对UITextField控件加入监听事件:
//UIControlEventEditingChanged
[self.txtName addTarget:self action:@selector(limitLength:) forControlEvents:UIControlEventEditingChanged];
最新文章
- out.print()和response.getWriter().write()区别
- linux tar order
- qunit.js初试
- 插值和空间分析(一)_探索性数据分析(R语言)
- poj 4045 (树形DP)
- Aizu 2456 Usoperanto 贪心 拓扑排序
- jquery颜色渐变
- Java基础—ClassLoader的理解(转)
- 多种语言开发Spark-以WordCount为例
- angular 选中切换面板
- C. Maximum Subrectangle
- 关于Android如何创建空文件夹,以及mkdir和mkdirs的区别
- tomcat 调优-生产环境必备
- 基于tensorflow 1.x 的检索机器人chatbot-retrieval
- Linux 隐藏系统信息
- validating &; update ctabfolder css
- python learning OOP2.py
- snmp获取设备相关管理信息
- 排查Hive报错:org.apache.hadoop.hive.serde2.SerDeException: java.io.IOException: Start of Array expected
- iOS视频播放(AVFoundation)
热门文章
- Android中GridView滚动到底部加载数据终极版
- Fitnesse+RestFixture:Web服务回归测试利器
- 【和我一起学python吧】Python解释执行原理
- 使用 CreateInstallMedia 创建 苹果系统安装U盘
- kobo boot scripts
- [Hive - Tutorial] Built In Operators and Functions 内置操作符与内置函数
- IO-同步,异步,阻塞,非阻塞,阅读摘要
- sys.check_constraints
- 小C的填数游戏
- source insight 支持CC 文件