从一个view中获取到它的ViewController (事件响应机制,层层传递事件)
2015-03-03 11:15
106 查看
#pragma mark -- 获取view的controller - (UIViewController *)viewController { for (UIView* next = [self superview]; next; next = next.superview) { UIResponder *nextResponder = [next nextResponder]; if ([nextResponder isKindOfClass:[UIViewController class]]) { return (UIViewController *)nextResponder; } } return nil; }
#pragma mark -- 查看图片 -(void)lookPic:(UITapGestureRecognizer *)tap { /** 图片数组:self.pic_Array 索引:tap.view.tag-PIC_VIEW_TAG */ NSLog(@"ok -- %d--%@",tap.view.tag-PIC_VIEW_TAG,self.pic_Array[tap.view.tag-PIC_VIEW_TAG-1]); AZLookPicViewController *lookPicVC=[AZLookPicViewController new]; lookPicVC.picDataArray=self.pic_Array; lookPicVC.showIndex=tap.view.tag-PIC_VIEW_TAG-1; [[self viewController] presentViewController:lookPicVC animated:NO completion:nil]; }
有时候,我们需要在一个cell中填入不同view,但是我们想点击view上的按键,能够使得整个viewcontroller进行跳转,那么这时候就需要使用这种方法来获取到view下的viewcontroller。 例如:点击view上的图片,进入到图片详情页。
相关文章推荐
- Android中ViewGroup到View的Touch事件的传递机制
- Android ViewGroup中事件触发和传递机制
- Android ViewGroup中事件触发和传递机制
- 利用Associative机制为UIAlertView添加一个Block属性,将AlertView与button的响应事件关联
- android view、viewgroup 事件响应拦截处理机制
- Android ViewGroup中事件触发和传递机制
- Android中的View事件传递机制
- View的事件传递机制-原理介绍(1)
- Android ViewGroup中事件触发和传递机制
- Android Activity 和 ViewGroup中事件触发和传递机制
- 嵌套view之间的事件传递机制
- MFC:如何使用Boost.Signal2在Document-View结构中添加事件响应机制
- Android ViewGroup中事件触发和传递机制
- View的事件传递机制-实例分析(2)
- Android ViewGroup中事件触发和传递机制
- 转:Android view事件传递机制
- (转)Android ViewGroup中事件触发和传递机制
- 深入探索 ViewGroup 的事件传递机制
- Android ViewGroup中事件触发和传递机制
- 深入理解 View 的事件传递机制