我在textView的inputAccessoryView属性中使用工具栏。当键盘显示时,它会按预期显示工具栏。当设备旋转时,我想删除工具栏。我试过了:如何在不关闭键盘的情况下隐藏inputAccessoryView
myTextView.inputAccessoryView.hidden = !layoutIsPortrait;
这确实会隐藏工具栏,但会留下较高键盘的轮廓。键盘显然仍然大小适合工具栏。它看起来很糟糕,并且会干扰潜在响应者的碰触事件。
myTextView.inputAccessoryView = nil;
只有当我resignFirstResponder,然后becomeFirstResponder再次工作。这是不可接受的。我丢失了textView的光标位置和内容,键盘闪烁而出。
[myTextView.inputAccessoryView removefromSuperview];
什么都不做。 我保存在伊娃工具栏的引用,并解决该相反,
[myIvarReference removeFromSuperview];
这样的作品,但同样在键盘的较高轮廓依稀可见。这次它不会影响其他视图的触动。所以现在这是一个可行的解决方案,但在视觉上无法接受。 我还可以尝试显示并隐藏inputAccessoryView吗?
Screenshot-键盘上方的微弱线是被去除的工具栏
你介意发布一个屏幕截图,指出“高键盘轮廓”的意思吗?我觉得你提到的解决方案应该可以工作(至少其中之一),但我不确定什么是美观上可以接受的... – geraldWilliam
我添加了截图的特写 –
我无法测试它现在,但没有myTextView.inputAccessoryView.frame = CGRectZero做你想要的? – geraldWilliam