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(数字键盘)的 UIButton 矩阵?
UIButton iOS 7 跟随 UIKeyboard 动画
解雇 UIKeyboard 在 Objective-C 中不起作用