Iphone 如何在触摸滚动视图背景时隐藏键盘?

Iphone 如何在触摸滚动视图背景时隐藏键盘?,iphone,ios,objective-c,ios6,Iphone,Ios,Objective C,Ios6,我看过所有的解决方案,但没有一个有效。我正在为iOS 6和ipad开发一款应用程序。我希望当用户触摸外部(在scrollview上)时,键盘消失。尝试使用此键盘。我希望这会有帮助 - (void)viewDidLoad { [super viewDidLoad]; UITapGestureRecognizer *gestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:sel

我看过所有的解决方案,但没有一个有效。我正在为iOS 6和ipad开发一款应用程序。我希望当用户触摸外部(在scrollview上)时,键盘消失。

尝试使用此键盘。我希望这会有帮助

  - (void)viewDidLoad
    {
        [super viewDidLoad];

        UITapGestureRecognizer *gestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hideKeyBoard:)];
        gestureRecognizer.delegate = self;
        [scrollView addGestureRecognizer:gestureRecognizer];
    }

    -(void) hideKeyBoard:(UIGestureRecognizer *) sender
    {
        [self.view endEditing:YES];
    }

在viewDidLoad中提供以下代码

-(void) ViewDidLoad
{
UITapGestureRecognizer *tapScroll = [[UITapGestureRecognizer alloc]initWithTarget:self     action:@selector(tapped)];
tapScroll.cancelsTouchesInView = NO;
[scrollview addGestureRecognizer:tapScroll];
}
并定义函数如下

- (void) tapped
{
[self.view endEditing:YES];
}

如果您使用的是
xib
,则只需将
tapRecognizer
连接到您的
scrollview
,然后创建
tapRecognizer的
选择器事件以
[self.view endEditing:YES]

将scrollview委托设置为self

self.scrollView.delegate=self;
然后


您可以使用以下代码隐藏键盘:

-(void)viewDidLoad
{
    [super viewDidLoad];

    UITapGestureRecognizer *gesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hideTheKeyBoard:)];
    gestureRecognizer.delegate = self;
    [scrollView addGestureRecognizer:gestureRecognizer];
}

-(void) hideTheKeyBoard:(UIGestureRecognizer *)sender
{
    [self.view endEditing:YES];
}

试试这个。我希望这会对你有所帮助。享受吧

您正在寻找:?
[yourtxtFld辞职FirstResponder]
@sivakumar查看我的答案,它将解决您的问题或更好地使用:
-(void)scrollView将开始拖动:(UIScrollView*)scrollView
-(void)scrollViewDidScroll:(UIScrollView *)scrollView{


if (sTitle.isFirstResponder) {
    [sTitle resignFirstResponder];
}
}
-(void)viewDidLoad
{
    [super viewDidLoad];

    UITapGestureRecognizer *gesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hideTheKeyBoard:)];
    gestureRecognizer.delegate = self;
    [scrollView addGestureRecognizer:gestureRecognizer];
}

-(void) hideTheKeyBoard:(UIGestureRecognizer *)sender
{
    [self.view endEditing:YES];
}
add custom button on scrollview and
-(IBAction)btn:(id)sender
{
  [txt resignfirstresponder];
}

enjoy it!!
UITapGestureRecognizer *tapScroll = [[UITapGestureRecognizer alloc]initWithTarget:self     action:@selector(Click)];
ScrollClick.cancelsTouchesInView = NO;
[YOUR scrollview addGestureRecognizer:ScrollClick];


- (void)Click
{
 [self.view endEditing:YES];
}