我正在尝试复制Facebook Messenger App,其中有一个UITextView
连接到键盘的顶部.
由于这个应用程序的性质,我需要view
连接,而不是ScrollView
在键盘出现时手动上下滚动.
这可以通过使用a来实现inputAccessoryView
.
我在这里阅读了文档.
文档非常简短,并说:
"此属性通常用于将附件视图附加到为UITextField和UITextView对象呈现的系统提供的键盘.
此只读属性的值为nil.如果要将自定义控件附加到系统提供的输入视图(例如系统键盘)或自定义输入视图(您在inputView属性中提供的视图),请在UIResponder子类中将此属性重新声明为read-write.
然后,您可以使用此属性来管理自定义附件视图.当接收器成为第一响应者时,响应者基础设施将附件视图附加到适当的输入视图,然后再显示它.
我试过宣布一个属性
@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
和更多,但这主要是一个例子.
任何帮助是极大的赞赏!
将输入附件添加到textField或textView而不是纯UIView.
self.mytextField.inputAccessoryView = view;