从Cell的视图推出一个新的界面

先写一个方法, 强制增加一个navigation的属性. 这样self就可以调出来navigation了

- (UINavigationController*)naviController {
    
    for (UIView* next = [self superview]; next; next = next.superview) {
        
        UIResponder* nextResponder = [next nextResponder];
        
        if ([nextResponder isKindOfClass:[UINavigationController class]]) {
            
            return (UINavigationController*)nextResponder;
        }
    }
    
    return nil;
}

 然后, 在cell的点击方法中调用这个属性, 并推出一个新的界面:

- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath {
    
    myViewController *vc = [[myViewController alloc]init];
    
    [[self naviController] presentViewController:vc animated:YES completion:nil];
    
}

 

posted @ 2016-08-16 21:58  ma_fighting  阅读(259)  评论(0)    收藏  举报
历史天气查