我正在尝试复制 Facebook Messenger 应用程序,该应用程序UITextView
的键盘顶部附有一个。
由于这个应用程序的性质,我需要连接,而不是在键盘出现时view
手动上下滚动。ScrollView
这可以通过使用inputAccessoryView
.
我在这里阅读了有关它的文档。
该文档非常简短,并说:
“此属性通常用于将附件视图附加到为 UITextField 和 UITextView 对象呈现的系统提供的键盘上。
此只读属性的值为 nil。如果要将自定义控件附加到系统提供的输入视图(例如系统键盘)或自定义输入视图(您在 inputView 属性中提供的),请在 UIResponder 子类中将此属性重新声明为可读写。
然后,您可以使用此属性来管理自定义附件视图。当接收者成为第一响应者时,响应者基础设施在显示之前将附件视图附加到适当的输入视图。”
我试过声明一个属性
@interface CommentViewController ()
@property (nonatomic, readwrite, retain) UIView *inputAccessoryView;
@end
然后设置它:
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
UIView *view = [[UIView alloc]initWithFrame:CGRectMake(0, 20, 320, 100)];
[view setBackgroundColor:[UIColor greenColor]];
self.inputAccessoryView = view;
}
然后我尝试调用这两个:
[self.tableView becomeFirstResponder];
[view becomeFirstResponder];
没发生什么事。我究竟做错了什么?
*注意 - 额外信息:我正在使用UITableViewController
我想要UIView
附加的inputAccessoryView
. 一旦我让视图工作,我将添加一个UITextView
等等,但这主要是一个例子。
任何帮助是极大的赞赏!