【发布时间】:2012-10-28 09:47:46
【问题描述】:
我看到很少有应用程序扩展键盘,但我想知道他们是如何做到的。
这里有 2 个例子。
现在我知道我可以将 inputAccessoryView 添加到 UITextView 但它仍然有细小的细线将键盘与 UIToolbar 分开,如下图所示。
他们是怎么做到的?扩展持有键盘或其他方式的 UIWindow?
用答案更新 1:
所以我使用了 Tyraz 编写的解决方案。
- 子类 UIToolbar
- 我使用 UIView 而不是图像,其背景颜色与键盘渐变的最终颜色相同,并使用 UIViewAutoResizingMaskFlexibleWidth 以便在旋转时覆盖键盘,高度为 3 像素
这是子类 UIToolbar 的代码
- (void)didMoveToSuperview {
[self.separatorHideView removeFromSuperview];
CGRect seperatorRect = CGRectMake(self.frame.origin.x,
self.frame.size.height,
self.frame.size.width,
3.0);
self.separatorHideView = [[UIView alloc]];
self.separatorHideView.backgroundColor = [UIColor colorWithRed:0.569 green:0.600 blue:0.643 alpha:1.000];
self.separatorHideView.autoresizingMask = UIViewAutoresizingFlexibleWidth;
[self addSubview:self.separatorHideView];
}
更新 2:这是我如何将其添加到 UITextView 以及我使用什么颜色进行着色的代码。
我使用以下代码将其添加到 viewDidLoad 中的 UITextView
CustomToolbar *accessoryToolbar = [[CustomToolbar alloc] initWithFrame:CGRectMake(0, 0, 320, 38)];
accessoryToolbar.tintColor = [UIColor colorWithRed:0.569 green:0.600 blue:0.643 alpha:1.000];
editor.inputAccessoryView = accessoryToolbar;
这就是应用解决方案后的样子
【问题讨论】:
-
嗨阿马尔!我实际上希望增强我的输入附件视图(即 UIToolbar),使其具有与此处描述的相同的外观。您介意发布 separatorHideView 背景颜色的确切颜色设置吗?你是如何给 UIToolbar 上色的,让它有匹配的渐变来适应键盘?非常感谢!
-
嗨内纳德。没问题。我不知道为什么上面的代码中没有显示颜色,但我会修复它。
-
非常感谢!为我工作!
标签: iphone objective-c ios