iOS開發 如何通過檢視(view)獲取該檢視所在的控制器(viewController)
方法函式
/**
* 返回當前檢視的控制器
*/
- (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;
}
(有什麼看不懂的可以在評論給我說!)
相關文章
- 獲取view所在的ViewControllerViewController
- [譯] 通過檢視控制器容器和子檢視控制器避免龐大的檢視控制器
- iOS10 UI教程檢視的繪製與檢視控制器和檢視iOSUI
- iOS 檢視控制器的生命週期iOS
- MySQL View 檢視MySqlView
- iOS專案開發實戰——UIView的子檢視和父檢視iOSUIView
- 小程式開發基礎-view檢視容器View
- iOS開發系列--檢視切換iOS
- 檢視與檢視控制器生命週期
- iOS開發之獲取Storyboard建立的ViewControlleriOSViewController
- (轉載)iOS中獲取某個檢視的截圖iOS
- 檢視執行緒所在模組執行緒
- materialized view (物化檢視)ZedView
- 在列印視窗,列印檢視View的子檢視結構圖View
- iOS 11開發教程(十六)iOS11應用檢視之刪除空白檢視iOS
- Swift view 中 獲取ViewControllerSwiftViewController
- Asp.Net MVC控制器獲取檢視傳值幾種方式ASP.NETMVC
- 【VIEW】建立檢視快速獲取Library Cache中超過50KB大小的資料庫物件View資料庫物件
- MySQL View(檢視)詳解MySqlView
- 檢視所有VIEW/TABLE in MSSQLViewSQL
- iOS開發之表檢視愛上CoreDataiOS
- ThinkPHP框架檢視詳細介紹View檢視–模板(九)PHP框架View
- 獲取單個檢視DDL指令碼指令碼
- 建議開發員少用帶錶連結的檢視(此檢視非物化檢視)
- 【檢視】使用V$SQL_PLAN檢視獲取曾經執行過的SQL語句執行計劃SQL
- 通過shell指令碼檢視procedure的資訊指令碼
- 通過shell指令碼檢視package的資訊指令碼Package
- hive中的 lateral view(側檢視)HiveView
- Dataguard (Standby) 相關的檢視(View)View
- 獲取當前控制器(viewController)ViewController
- iOS開發-列表檢視的基本介紹與使用iOS
- 【asp.net core 系列】3 檢視以及檢視與控制器ASP.NET
- Android自動化-如何獲取檢視元素屬性?Android
- 通過shell指令碼檢視鎖資訊指令碼
- 建立物化檢視MV ( Materialized View )ZedView
- iOS專案開發實戰——檢視動畫效果iOS動畫
- 關於開發檢視
- 檢視過濾