iOS模拟键盘长按删除
最近做第三方键盘开发,模拟键盘的长按删除
删除按钮上添加长按事件:
UILongPressGestureRecognizer *longPress = [[UILongPressGestureRecognizeralloc] initWithTarget:selfaction:@selector(deleteMore:)];
[deleteBtn addGestureRecognizer:longPress];
事件响应:
- (void)deleteMore:(UILongPressGestureRecognizer*)sender {
if (sender.state ==UIGestureRecognizerStateBegan) {
[selfbeginDelete];
} elseif (sender.state ==UIGestureRecognizerStateEnded){
[selfendDelete];
}
}
- (void)beginDelete {
[self.timerinvalidate];
self.timer =nil;
self.timer = [NSTimertimerWithTimeInterval:0.1repeats:YESblock:^(NSTimer *_Nonnull timer) {
[self.textDocumentProxydeleteBackward];
}];
[[NSRunLoopmainRunLoop]addTimer:self.timerforMode:NSRunLoopCommonModes];
}
- (void)endDelete {
[self.timerinvalidate];
self.timer =nil;
}
注意:beginDelete中timer支持10以上api,如果需要支持10以下请改为:
- (void)deleteMore:(UILongPressGestureRecognizer*)sender {
if (sender.state ==UIGestureRecognizerStateBegan) {
[selfbeginDelete];
} elseif (sender.state ==UIGestureRecognizerStateEnded){
[selfendDelete];
}
}
- (void)beginDelete {
[self.timer invalidate];
self.timer = nil;
self.timer = [NSTimer timerWithTimeInterval:0.1 target:self selector:@selector(delete:) userInfo:nil repeats:YES];
[[NSRunLoop mainRunLoop] addTimer:self.timer forMode:NSRunLoopCommonModes];
}
- (void)endDelete {
[self.timer invalidate];
self.timer = nil;
}
- (void)delete:(NSTimer*)timer {
[self.textDocumentProxy deleteBackward];
}
iOS模拟键盘长按删除相关推荐
- selenium模拟键盘事件(回车、删除、刷新等)
需要引入keys from selenium.webdriver.common.keys import Keys sendkeys可以模拟键盘输入和键盘上的按键: send_keys(Keys.BAC ...
- python3模拟键盘输入_Python模拟键盘输入
使用pynput库达到模拟键盘输入的目的(也可以进行鼠标模拟). 1.安装pynput库 pip install pynput 2.引入键盘所需类 from pynput.keyboard impor ...
- Python 模拟键盘鼠标操作实战教程
在某些情况下,如果我们需要进行自动化操作的应用没有提供相应的接口,我们无法直接通过Python来调用API实现自动化.这种情况下,Python也不是完全没有办法的,我们可以采用模拟键盘和鼠标的方式实现 ...
- C++模拟键盘操作窗口入门
C++模拟键盘操作窗口入门之文件监控操作句柄操作 #include <iostream> #include <windows.h> #include <tchar.h&g ...
- Cypress之模拟键盘鼠标操作以及页面元素拖动操作
上篇文章讲解了使用cypress框架时,如何上传或者下载文件,以及定位操作iframe和shadow dom下的页面元素.此次课程将讲解如何模拟键盘输入.鼠标操作以及如何拖动页面元素,另外,会介绍如何 ...
- Android电子牌外接USB读卡器读取内容模拟键盘事件
最近做了一个Android外接USB读卡器刷手环读取数据,模拟键盘输入事件的项目; 借鉴了https://github.com/githubRonda/BarcodeScanner 连接电子牌板子调试 ...
- iOS - 监控键盘高度、屏蔽字符、限制字符个数
iOS开发中,经常会用到UITextView,UITextField输入文本操作,默认的键盘输入会有emoji表情.空格.非法字符等,会与实际的产品需求不符,这时候就需要我们做限制,禁止输入表情或者空 ...
- 按键精灵模拟键盘批量输入英文大小写
可以直接看最后面的,前面的方法已经过期... 起因:闲来 无聊,公司开发的方式是虚拟云平台,所有工作都在云平台上完成,所以云平台外面的数据文档无法和云平台直接传送,如有需要,必须写申请单,向领导申请, ...
- web仿微信支付界面,自定义模拟键盘
web仿微信支付界面,自定义模拟键盘 可谓是煞费苦心 还是自己技能不足,不过还是出来了 这里先声明:下面不是全部代码,想要全部代码的可以到个人主页下载 先看下效果图 第一板块是html界面 有需要完整 ...
最新文章
- 小团队如何玩转物联网开发?
- 皮一皮:直男相亲还想着龙珠...
- 10个奇幻的HTML5和Javascript效果
- 分布式服务常见问题—分布式事务
- MOSS 2007的备份与恢复
- std::string删除首字符
- shell语法 06-Linux文本处理-grep
- bootstrap select2 php,JS组件Bootstrap Select2使用方法详解
- 下载MNIST数据集并使用python将数据转换成NumPy数组(源码解析)
- python任务调度平台 界面_分布式任务调度平台XXL-JOB搭建教程
- 汉字的动态编码与显示方案
- APM终端用户体验监控分析(下)
- atitit.交换机 汇聚上联、网络克隆和标准共享的原理与区别
- 史上最全网易云音乐的API接口
- 数据库系统概述--数据库习题
- 删不掉文件夹怎么办?
- c# - - - 使用Chloe框架连接PostgreSQL数据库
- 百度收集子域名(2021.9.9)
- IE浏览器打开闪退,自动切换MicrosoftEdge浏览器
- python 线程通信的几种方式_Python 线程、线程通信、多线程
热门文章
- OpenCV的Masking操作
- Realtime Multi-Person 2D Pose Estimation Using Part Affinity Fields【菜鸟读者】
- MWC 2017:S8缺席,三星祭出AR/VR项目救场
- 手机端点击图片全屏预览
- Photoshop:使用层遮照制作图像渐变特效(2)
- y7000电池固件_y7000怎么刷电池固件|Surface Pro 3固件更新:电池续航问题终解决
- 亚马逊多店铺统一管理还不会关联?原来是靠它
- 女性最容易出轨的8种职业
- 什么是一对一电脑无人直播?
- 小米浏览器禁用java_2019-03-11 小米散招面试-Java后台实习