ios - 在有限的文本字段长度上剪切粘贴的文本
问题描述
我的代码如下:
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
{
if(range.length + range.location > textView.text.length)
{
return NO;
}
NSUInteger newLength = [textView.text length] + [text length] - range.length;
return newLength <= 80;
}
在我的 textField 中将文本版本限制为最多 80 个字符。
我想要一种在该 textField 中粘贴文本的方法,但不要拒绝粘贴,只需剪切它以填充 80 个字符。
我怎样才能做到这一点?
解决方案
创建新字符串,截断为 80,然后更新文本视图。
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
{
NSString *newText = [textView.text stringByReplacingCharactersInRange:range withString: text];
if (newText.length > 80) {
newText = [newText substringToIndex: 80];
textView.text = newText;
return NO;
} else {
return YES;
}
}
推荐阅读
- visual-studio-code - File Utils plugin - command 'fileutils.duplicateFile' not found
- php - 包含 PHP 和 CSS 文件 -> 相对路径
- python - Streaming from Python logging/stdout to a redis connection
- php - PHP interface in extended class not recognized as instance
- html - 使用 HTML 和谷歌应用脚本突出显示谷歌表格单元格中的文本
- android - Firebase & 按值/键过滤排序
- c++ - 如何使用算法将一个容器中对象中的成员复制到另一个容器?
- python - 试图在python中比较两个字符串
- c# - 如何将所选日期转换为字符串并在 DataGrid 上查看
- javascript - commons.js 错误地引用 HEAD 而不是 head