今天做項目的時候遇到一個需求,就是子view視圖彈出時,屏蔽掉父view的所有手勢,然後想到用 UIGestureRecognizerDelegate代理方法,中間省一些文字(無奈臉),言歸正傳,NSStringFromClass其實是用來判斷類型的,看代碼 好尷尬的我。。。。屏蔽掉父view的所有 ...
今天做項目的時候遇到一個需求,就是子view視圖彈出時,屏蔽掉父view的所有手勢,然後想到用
UIGestureRecognizerDelegate代理方法,中間省一些文字(無奈臉),言歸正傳,NSStringFromClass其實是用來判斷類型的,看代碼
MyModel *model=[MyModel alloc] init]; Bool dd=NSStringFromClass([[model class]isEqualToString:@"NSDictionary"]); //判斷model是否為NSDictionary類型
好尷尬的我。。。。屏蔽掉父view的所有手勢直接創建一個大小高度和父view一樣的view,將view添加到window中,在將子view添加到view,此時可以在子view進行所有手勢,點擊到父view時是沒有反應的。上代碼
UIWindow *window = [UIApplication sharedApplication].keyWindow; _vi_max=[[UIView alloc]initWithFrame:CGRectMake(self.view.frame.origin.x, self.view.frame.origin.y, K_SCREEN_WIDTH, K_SCREEN_HEIGHT)]; _vi_max.backgroundColor=[UIColor colorWithRed:153.0/255 green:153.0/255 blue:153.0/255 alpha:0.5]; [window addSubview:_vi_max]; _vi=[[UIView alloc]initWithFrame:CGRectMake((K_SCREEN_WIDTH-120)/2, (K_SCREEN_HEIGHT-80)/2, 120, 80)]; _vi.backgroundColor=[UIColor whiteColor]; [_vi_max addSubview:_vi]; UIButton *quxiao=[[UIButton alloc]initWithFrame:CGRectMake(0,0, 50, 50)]; [quxiao setTitle:@"取消" forState:UIControlStateNormal]; quxiao.backgroundColor=[UIColor orangeColor]; [quxiao addTarget:self action:@selector(BtnClick_About_us:) forControlEvents:UIControlEventTouchUpInside]; [_vi addSubview:quxiao];
一般用於自定義彈框。 圖示: