我有一个应用程序,它有几个UITextField,允许我的用户输入他们的年龄和另一个数字值。理想情况下,当编辑TextField时,我希望键盘调出数字小键盘。
在尝试使用数字键盘时,我尝试通过点击主视图的背景将其设置为关闭。
-(IBAction)backgroundTapped:(id)sender;我在我的头文件中创建了上述操作。
-(IBAction)backgroundTapped:(id)sender {
[ageEntry resignFirstResponder];
}我在我的实现文件中扩展了上面的方法,告诉ageEntry TextField to resignFirstResponder。我还将主视图更改为UIControl类,并通过Interface Builder将buttonTapped操作连接到相关的警报。然而,当我触摸背景时,什么也没有发生。
有什么想法吗?
发布于 2011-08-02 16:59:01
只需使用下面的方法检测viewController视图中的触摸
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
[urAgeField resignFirstResponder];
[urOtherField resignFirstResponder];
}并在此方法中重新设计键盘
发布于 2011-08-02 16:59:42
一种更简单的方法是向文本字段添加一个inputAccessoryView。这个输入附件视图可以是一个带有单个Done按钮UITabBarButton的UIToolbar。
它看起来更像是Safari中用来取消键盘的附件视图。
发布于 2011-08-02 16:58:06
我也遇到过类似的问题。这是the solution..
编辑的
添加
- (void)viewDidLoad
{
[super viewDidLoad];
UITapGestureRecognizer* tap = [[UITapGestureRecognizer alloc] initWithTarget:self
action:@selector(tap:)];
tap.numberOfTapsRequired = 1;
[self addGestureRecognizer:tap];
}
- (void) touchesBegan:(NSSet*)touches withEvent:(UIEvent*)event
{
[ageEntry resignFirstResponder];
}https://stackoverflow.com/questions/6909488
复制相似问题