美文网首页codeER.tec在iOS开发的道路上越走越远
ios 第三方键盘开发 无限刷屏浅析

ios 第三方键盘开发 无限刷屏浅析

作者: 姬拉 | 来源:发表于2016-09-02 19:26 被阅读555次

故事前景:

  某直播刷人气,主播随机截图抽取当前留言者为中奖对象......

 想着写个第三方键盘无限刷  然后写了这个么小玩意,贴出来互相学习

首先当然是创建一个手机APP项目:(这一步贴上来真是浪费流量.....)

新建项目以后我直接新建了两个控件:(为了研究键盘的发送,和写入数据用)

一开始我以为苹果会直接提供发送方法,类似点击键盘上的(done,return....)找了一圈苹果文档么发现,后来去墙外发现了原来是换一种方式玩的,往下看:

在原来的项目上添加了一个 target 如图 (这玩意就是苹果的第三方键盘了)

如下是自动创建的两个类,所有内容都从这里面展开:

首先要解决的第一个问题是 如何插入文字,以微信为例,如何在微信聊天输入框插入文本:

UITextDocumentProxy 这个类为我们提供了插入,删除,等基本操作,但是方法也不多就几个基本的

//自己猜

- (void)dismissKeyboard;

//切换键盘

- (void)advanceToNextInputMode;

//判断是否存在文本(我猜的没有试验)

- (BOOL)hasText;

//插入文本

- (void)insertText:(NSString*)text;

//删除(我估计删除一个字符,我猜的没试)

- (void)deleteBackward;

这些方法够用了,一开始跑起来时候默认是长这样的:

创建新的view 没有什么特别的

跑起来的时候让我选择个APP 执行 但是我发现 没有选的也可以使用键盘,这个我后期研究差不多了陆续提交:

最最最重点的是 我们已经可以插入文字,接下来就是解决如何调用发送这个功能了,找了一圈文档没找到,后来听了一遍 《流川枫与苍井空》豁然开朗,原来只要插入 @“\n” 就能调用 别人APP的
-(BOOL)textFieldShouldReturn:(UITextField*)textField
这个方法。

//发送

[self.textDocumentProxyinsertText:@"\n"];

接下来的刷屏就简单了,一个定时 一插一发  一发一插.....无穷尽也。
配上几个效果图:

end;

本人 课余喜欢研究  object pascal ,object c ,java,玩些 c# 。欢迎广大IT男加群 (367276878)互相学习

大家好我叫姬拉

相关文章

网友评论

    本文标题:ios 第三方键盘开发 无限刷屏浅析

    本文链接:https://www.haomeiwen.com/subject/kgckettx.html