方法函數
/**
* 返回當前視圖的控制器
*/
- (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;
}
說明
我在開發中,我將view和viewController分別寫在不同的類中,當view中的滑動視圖被點擊時,我需要跳轉到一個詳細界面,XYRDetailViewController就是我需要跳轉的詳細界面,下面是詳細的代碼,你們主要是看方法函數里面的內容:
我的應用代碼:
#pragma mark -SDCycleScrollViewDelegate
/** 點擊圖片回調 */
- (void)cycleScrollView:(SDCycleScrollView *)cycleScrollView didSelectItemAtIndex:(NSInteger)index{
NSLog(@"%ld",(long)index);
XYRDetailViewController *view=[[XYRDetailViewController alloc]init];
[[self viewController].navigationController pushViewController:view animated:YES];
}
/**
* 返回當前視圖的控制器
*/
- (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;
}
(有什么看不懂的可以在評論給我說!)