UIScrollview 上的點擊背景退出編輯狀態(tài)

為 UIScrollView 添加點擊事件,從而實現(xiàn) scrollview 上的點擊背景退出編輯狀態(tài)。

直接代碼呈上:

一、先要支持協(xié)議 UIGestureRecognizerDelegate

二、為你需要添加點擊事件的 scrollview 添加點擊手勢

// 對 srcollView 添加點擊響應
    UITapGestureRecognizer *sigleTapRecognizer = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(clickBackView)];
    sigleTapRecognizer.delegate=self;
    sigleTapRecognizer.numberOfTapsRequired = 1;

    [_baseScrollView addGestureRecognizer:sigleTapRecognizer];

三、點擊后的處理 ----- 這里是點擊 scrollview 上空白處才進行處理

// 點擊背景取消所有編輯狀態(tài)
-(void)clickBackView
{
    NSLog(@" 點了一下背景 ");
    [_baseScrollView endEditing:YES];
}

#pragma mark UIGestureRecognizerDelegate
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
{
    // 輸出點擊的 view 的類名
    NSLog(@"%@", NSStringFromClass([touch.view class]));
   
    // 若為 ScrollView 的點擊事件才響應,scrollview 上的 UIButton、UILabel 啥的點了也不會進哦
    if ([NSStringFromClass([touch.view class]) isEqualToString:@"UIScrollView"]) {
        return YES;
    }
    return  NO;

}
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容