UITextView inputAccessoryView与iOS 8中的键盘顶部重叠

Jam*_*mes 5 iphone objective-c ios inputaccessoryview ios8

对于某些UITextView字段,我有一个漂亮的vanilla inputAccessoryView工具栏.上一个,下一个和完成按钮.我将它们放在UIViewController类中,并将它们分配给UITextFields,如下所示:

self.outPlayerOneTextField.inputAccessoryView = myAccessoryVc.view;
Run Code Online (Sandbox Code Playgroud)

这在iOS 7中运行良好.对于iOS 8,它现在重叠键盘的顶部,如下所示:

辅助工具栏重叠ios8中的键盘顶部

什么改变了什么指针?或者将它包装在视图控制器中并不是一件好事吗?

Ben*_*Ben 0

我也遇到过同样的事情。框架并不是由我的约束自动设置的。为了解决这个问题,我在设置 inputAccessoryView 之前手动设置框架,如下所示:

CGSize rect=[view systemLayoutSizeFittingSize:CGSizeMake(0, 0)];
view.frame=CGRectMake(0, 0, rect.width, rect.height);
Run Code Online (Sandbox Code Playgroud)

或者,如果您使用 Objective C++,您可以像这样简化它:

view.frame={{0,0},[view systemLayoutSizeFittingSize:{0,0}]};
Run Code Online (Sandbox Code Playgroud)