Instagram 如何将 UIKeyboard returnKey 自定义为“@”和“#”?

Posted

技术标签:

【中文标题】Instagram 如何将 UIKeyboard returnKey 自定义为“@”和“#”?【英文标题】:How does Instagram customize the UIKeyboard returnKey to an '@' and a '#"? 【发布时间】:2012-08-01 02:07:39 【问题描述】:

Instagram ios 应用的最新版本做了一些有趣的事情。在文本字段中书写(例如,发表评论)时,UIKeyboard 的返回键已被两个键替换:@ 键和 # 键。截图如下:

我想知道他们是如何做到这一点的。据我所知,@# 键的行为与普通键一样:它们在通常没有 returnKey 的键盘(例如表情符号键盘)中消失,等等。

到目前为止,我唯一想到的是应用程序正在获取对 UIKeyboard 的引用并循环遍历子视图,找到并隐藏 returnKey,然后找到并移动 @ 和 @ 987654329@ 键。还有其他想法吗?

【问题讨论】:

“移动”键并不那么容易 - 大多数键是单个键盘图像的一部分,可能是出于性能原因(“按下”覆盖显着大于键图像以防止边缘伪影,例如带有阴影)。更有可能将键添加为单独的视图。尝试在打开“颜色混合图层”CoreAnimation 工具的情况下运行应用程序。 【参考方案1】:

这似乎是一个文本字段,其 keyboardType 设置为 UIKeyboardTypeTwitter,首次在 iOS 5 中引入。它与 iOS 5 中的 Tweet Sheets 使用的键盘布局完全相同,返回键被替换为@# 键。

由于 Instagram 碰巧使用@ 来指代用户,# 用于标记帖子,就像 Twitter 一样,我猜他们是在借用 UIKeyboardTypeTwitter 以便在他们自己的应用程序中使用。

【讨论】:

以上是关于Instagram 如何将 UIKeyboard returnKey 自定义为“@”和“#”?的主要内容,如果未能解决你的问题,请参考以下文章

自定义数字键盘 UIKeyboard

如何创建一个行为类似于 UIKeyboard(数字键盘)的 UIButton 矩阵?

UIButton iOS 7 跟随 UIKeyboard 动画

解雇 UIKeyboard 在 Objective-C 中不起作用

如何使用我的 Android 应用将照片发送到 Instagram?

如何将 Instagram 提要嵌入我的网站 [关闭]