我的共享扩展程序除了在表格视图中配置之外不需要任何用户输入,所以我试图在Safari中显示视图时隐藏键盘。我能够在模拟器中正常运行我的代码,但是当我在设备上进行测试时,我发现共享扩展程序无法启动并且Safari挂起。
我尝试了几种方法来防止键盘启动
-(void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
self.textView.text = @"\n Place Holder Text";
self.textView.editable = NO;
}
同样,我在loadView中尝试过,因为那是SLComposeServiceViewController 设置textView和textView委托。
-(void)loadView{
[super viewWillAppear:animated];
self.textView.text = @"\n Place Holder Text";
self.textView.editable = NO;
}
只是为了好玩
-(BOOL)textViewShouldBeginEditing:(UITextView *)textView{
return NO;
}
所有这些都在模拟器上工作,但不在我的设备上。
可能会发生什么?
我是否(或Safari)缺少某种通知或观察者
答案 0 :(得分:3)
您只需将代码放在“viewDidAppear”函数中即可。 它对我来说很好。
-(void) viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
[self.textView setText:@" Place Holder Text"];
[self.textView setEditable: NO];
}