Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从iPhone Kindle创建突出显示/注释弹出按钮_Iphone_Cocoa Touch - Fatal编程技术网

如何从iPhone Kindle创建突出显示/注释弹出按钮

如何从iPhone Kindle创建突出显示/注释弹出按钮,iphone,cocoa-touch,Iphone,Cocoa Touch,我想知道亚马逊是如何在Kindle应用程序中突出显示/注释弹出按钮的。在阅读了有关UIPasteboard、UIMenuController、UIResponder和UIResponder标准编辑操作的内容后,我能够打开或关闭标准编辑操作(即复制、剪切、粘贴、选择和全选)。但是,我还没有找到添加自定义操作的方法。如果我能得到一个指针,我将非常感激 提前谢谢 克里斯 (来源:) 由balexandre编辑(添加图像链接)我认为这些控件没有公共界面,您可能需要自己编写它们。(或者可能找到了私有AP

我想知道亚马逊是如何在Kindle应用程序中突出显示/注释弹出按钮的。在阅读了有关UIPasteboard、UIMenuController、UIResponder和UIResponder标准编辑操作的内容后,我能够打开或关闭标准编辑操作(即复制、剪切、粘贴、选择和全选)。但是,我还没有找到添加自定义操作的方法。如果我能得到一个指针,我将非常感激

提前谢谢

克里斯


(来源:)


由balexandre编辑(添加图像链接)

我认为这些控件没有公共界面,您可能需要自己编写它们。(或者可能找到了私有API,但这是一个滑坡。)我不确定这一点,不过,也许有人会证明我错了。

看起来亚马逊实现了他们自己的自定义视图,模仿了UIMenuController的外观。我相信他们是这样做的,而不是使用SPI,因为如果你点击并按住突出显示单元格,箭头不会突出显示,而在真正的UIMenuController中,箭头不会突出显示。

这是一个关于注释/突出显示弹出菜单的箭头部分不突出显示的好观点,因此他们必须实现自己的

然而,他们显然也在使用UIWebView,因为它可以识别点击和按住,并且可以突出显示文本,并且您无法从UIWebView获取触摸事件,更不用说获取有关所选内容的信息了。那么他们是怎么做到的呢


这对我们来说也非常有用。

javascript部分可以用jQuery管理,这是一个相当简单和强大的库。我用它在webview中调整大小和重新排列内容,效果很好:)

使用DTMenuController


成本100欧元^ ^

可通过UIMenuController的menuItems属性添加自定义菜单项。请参阅。

WhatsApp Inc.也有此功能-我不需要为此创建自定义视图,这是他们的应用程序图像:他们重新创建控件的更多证据是圆角矩形的半径与您在真实UIMenuController标注中看到的半径不完全匹配。不是直接,但是您可以在web视图中使用JavaScript代码获取这些事件,并且本机应用程序和web视图中的内容之间存在双向通信。。。。当然,实施起来会很痛苦,但绝非不可能。