我在UIScrollview
上有一个文字字段。
当用户点击UITextfield
之外时,我会使用UIScrollViewKeyboardDismissModeInteractive
来关闭键盘。但它并没有消除键盘。
我的代码出了什么问题?
m_scrollProfile = [[UIScrollView alloc]initWithFrame:CGRectMake(0, 0, 300, 300)];
m_scrollProfile.backgroundColor = kBGWhiteColor;
m_scrollProfile.userInteractionEnabled = YES;
[self.m_bgImageView addSubview:m_scrollProfile];
m_scrollProfile.keyboardDismissMode = UIScrollViewKeyboardDismissModeInteractive;
答案 0 :(得分:0)
我最近遇到了同样的问题。在我的标题中,我添加了<UITextFieldDelegate>
,如下所示:
@interface YourClass : UIViewController <UITextFieldDelegate>
我在viewDidLoad
:
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(dismissKeyboard:)];
[self.view addGestureRecognizer:tap];
和
self.myTextField.delegate = self;
这个方法如下:
- (void)dismissKeyboard:(UITapGestureRecognizer *)recognizer {
NSLog(@"Dismiss keyboard");
[self.view endEditing:YES];
}
不确定您的实施还会发生什么,但它可以在用户点击UITextField
之外时正在处理的应用中运行。